Выполнение инструкции SQL с использованием реляционного подключения к базе данных
SELECT Инструкция SQLИспользуя соединение реляционной базы данных, создайте и выполните не--SELECT Инструкция SQL, удаляющая таблицу базы данных.
В этом примере используется база данных Microsoft ® SQL Server ® Version 11.00.2100 и 11.00.5058 драйверов Microsoft SQL Server.
Создайте подключение базы данных к базе данных Microsoft SQL Server с проверкой подлинности Windows ®. Укажите пустое имя пользователя и пароль.
datasource = 'MS SQL Server Auth'; conn = database(datasource,'','');
Загрузите информацию о пациенте в рабочую область MATLAB ®.
patients = readtable('patients.xls');Создать patients таблица базы данных с использованием информации о пациенте.
tablename = 'patients';
sqlwrite(conn,tablename,patients)Импорт данных из patients таблица базы данных.
data = sqlread(conn,tablename);
Удалить patients таблицы базы данных с использованием execute функция.
sqlquery = ['DROP TABLE ' tablename];
execute(conn,sqlquery)Закройте подключение к базе данных.
close(conn)
Работа с базой данных Microsoft ® SQL Server ®, запуск хранимой процедуры с использованием собственного подключения к базе данных ODBCconn.
Определение хранимой процедуры с именем create_table которая создает таблицу с именем test_table путем выполнения следующего кода. Эта процедура не имеет входных или выходных аргументов. Код предполагает, что используется база данных Microsoft SQL Server.
CREATE PROCEDURE create_table AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; CREATE TABLE test_table ( CATEGORY_ID INTEGER IDENTITY PRIMARY KEY, CATEGORY_DESC CHAR(50) NOT NULL ); END GO
Подключение к базе данных Microsoft SQL Server. Этот код предполагает, что вы подключаетесь к источнику данных с именем MS SQL Server с именем пользователя и паролем.
conn = database('MS SQL Server','username','pwd');
Вызов хранимой процедуры create_table.
execute(conn,'create_table')
Создайте инструкцию SQL, подготовленную для вставки данных из MATLAB ® в базу данных Microsoft ® SQL Server ® с использованием подключения к базе данных JDBC. Используйте INSERT Инструкция SQL для запроса SQL. Выполните подготовленную инструкцию SQL и просмотрите результаты.
Создайте подключение базы данных JDBC к базе данных SQL Server с проверкой подлинности Windows ®. Укажите пустое имя пользователя и пароль .
datasource = 'MSSQLServerJDBCAuth'; conn = database(datasource,'','');
Импорт данных из базы данных с помощью sqlread функция. Отображение последних нескольких строк данных в таблице базы данных inventoryTable.
tablename = "inventoryTable";
data = sqlread(conn,tablename);
tail(data,3)ans=3×4 table
productNumber Quantity Price inventoryDate
_____________ ________ _____ _______________________
11 567 0 {'2012-09-11 00:30:24'}
12 1278 0 {'2010-10-29 18:17:47'}
13 1700 14.5 {'2009-05-24 10:58:59'}
Создайте инструкцию SQL, подготовленную для вставки данных с помощью подключения к базе данных JDBC. Вопросительные знаки в INSERT Инструкция SQL указывает, что она является подготовленной инструкцией SQL. Эта инструкция вставляет данные из MATLAB в таблицу базы данных inventoryTable.
query = "INSERT INTO inventoryTable VALUES(?,?,?,?)";
pstmt = databasePreparedStatement(conn,query)pstmt =
SQLPreparedStatement with properties:
SQLQuery: "INSERT INTO inventoryTable values(?,?,?,?)"
ParameterCount: 4
ParameterTypes: ["numeric" "numeric" "numeric" "string"]
ParameterValues: {[] [] [] []}
pstmt является SQLPreparedStatement объект со следующими свойствами:
SQLQuery - Запрос подготовленной инструкции SQL
ParameterCount - Счетчик параметров
ParameterTypes - Типы параметров
ParameterValues - Значения параметров
Привязка значений параметров в подготовленной инструкции SQL. Выберите все параметры в подготовленной инструкции SQL, используя их числовые индексы. Укажите значения для привязки к номеру продукта, количеству, цене и дате инвентаризации. Сопоставление формата дат в базе данных. bindParamValues функция обновляет значения в ParameterValues имущества pstmt объект.
selection = [1 2 3 4];
values = {20,1000,55,"2019-04-25 00:00:00.000"};
pstmt = bindParamValues(pstmt,selection,values)pstmt =
SQLPreparedStatement with properties:
SQLQuery: "INSERT INTO inventoryTable values(?,?,?,?)"
ParameterCount: 4
ParameterTypes: ["numeric" "numeric" "numeric" "string"]
ParameterValues: {[20] [1000] [55] ["2019-04-25 00:00:00.000"]}
Вставка данных из MATLAB в базу данных с использованием связанных значений параметров. Выполнение SQL INSERT оператор с использованием execute функция.
execute(conn,pstmt)
Отображение вставленных данных в таблице базы данных inventoryTable. Последняя строка таблицы содержит вставленные данные.
tablename = "inventoryTable";
data = sqlread(conn,tablename);
tail(data,4)ans=4×4 table
productNumber Quantity Price inventoryDate
_____________ ________ _____ ___________________________
11 567 0 {'2012-09-11 00:30:24' }
12 1278 0 {'2010-10-29 18:17:47' }
13 1700 14.5 {'2009-05-24 10:58:59' }
20 1000 55 {'2019-04-25 00:00:00.000'}
Закройте подготовленную инструкцию SQL и подключение к базе данных.
close(pstmt) close(conn)
conn - Подключение к базе данныхconnection объектПодключение к базе данных, указанное как ODBC connection объект или JDBC connection объект, созданный с помощью database функция.
sqlquery - инструкция SQLИнструкция SQL, заданная как вектор символов или скаляр строки. Инструкция SQL может быть любой допустимойSELECT Инструкция SQL.
Инструкция SQL может быть хранимой процедурой, которая не возвращает результирующих наборов. Для хранимых процедур, возвращающих один или несколько результирующих наборов, используйте fetch функция. Для процедур, возвращающих выходные аргументы, используйте runstoredprocedure функция.
Сведения о языке запросов SQL см. в руководстве по SQL.
Пример: 'DROP TABLE patients'
Типы данных: char | string
pstmt - подготовленная инструкция SQLSQLPreparedStatement объектПодготовленная инструкция SQL, указанная как SQLPreparedStatement объект.
bindParamValues | close | close | database | databasePreparedStatement | fetch | runstoredprocedure | sqlread
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.