主要内容

执行

执行SQL语句使用关系数据库连接

自从R2018b

描述

例子

执行(康涅狄格州,sqlquery)包含一个非执行一个SQL查询选择通过使用关系数据库连接的SQL语句。

例子

执行(康涅狄格州,pstmt)准备执行一个SQL语句,其中包含一个非-选择通过使用关系数据库连接的SQL语句。

例子

全部折叠

使用关系数据库连接、创建和执行非选择删除一个数据库表的SQL语句。

这个示例使用Microsoft®SQL Server®版本11.00.2100数据库和Microsoft SQL Server司机11.00.5058。

创建一个数据库连接到Microsoft SQL Server数据库与Windows®身份验证。指定一个空白的用户名和密码。

数据源=“MS SQL Server身份验证”;康涅狄格州=数据库(数据源,,);

患者信息加载到MATLAB®工作区。

病人= readtable (“patients.xls”);

创建病人使用患者信息数据库表。

表名=“病人”;sqlwrite(康涅狄格州、表、病人)

导入的数据病人数据库表中。

data = sqlread(康涅狄格州,表名);

删除病人数据库表使用执行函数。

sqlquery = [“删除表”表名);execute(康涅狄格州,sqlquery)

关闭数据库连接。

关上(康涅狄格州)

使用微软®SQL Server®数据库,运行一个存储过程通过使用本机ODBC数据库连接康涅狄格州

定义一个存储过程命名create_table创建一个表test_table通过执行下面的代码。这个过程没有输入或输出参数。假设您正在使用的代码Microsoft SQL Server数据库。

创建过程create_table开始——设置NOCOUNT添加防止额外的结果——干扰选择语句。NOCOUNT;创建test_table(CATEGORY_ID添加整数身份关键,CATEGORY_DESCCHAR (50));最后去

连接到Microsoft SQL Server数据库。这段代码假设您是连接到一个数据源MS SQL Server用户名和密码。

康涅狄格州=数据库(“MS SQL Server”,“用户名”,“pwd”);

调用存储过程create_table

执行(康涅狄格州,“create_table”)

准备创建一个SQL语句将数据从MATLAB®插入一个Microsoft®SQL Server®数据库使用JDBC数据库连接。使用插入SQL语句的SQL查询。执行SQL预备语句和显示结果。

创建一个JDBC数据库连接到SQL Server数据库与Windows®身份验证。指定一个空白的用户名和密码。

数据源=“MSSQLServerJDBCAuth”;康涅狄格州=数据库(数据源,,);

导入数据从数据库中使用sqlread函数。显示数据库中的数据表的最后几行inventoryTable

表名=“inventoryTable”;data = sqlread(康涅狄格州,表名);尾(数据,3)
ans =3×4表productNumber数量价格inventoryDate _________________ ________ _____ _______________________ 11 567 {2012-09-11 00:30:24”} 1278 0 {' 2010-10-29 18:17:47} 13 1700 14.5 {' 2009-05-24 10:58:59 '}

创建一个SQL语句准备插入数据使用JDBC数据库连接。的问号插入SQL语句显示这是一个SQL。这个语句将MATLAB的数据插入到数据库表中inventoryTable

查询=“插入inventoryTable值(?,?,?,?)”;pstmt = databasePreparedStatement(康涅狄格州、查询)
pstmt = SQLPreparedStatement属性:SQLQuery:“插入inventoryTable值(?,?,?,?)ParameterCount: 4 ParameterTypes: ["numeric" "numeric" "numeric" "string"] ParameterValues: {[] [] [] []}

pstmt是一个SQLPreparedStatement对象与这些属性:

  • SQLQuery——查询SQL准备语句

  • ParameterCount——参数计算

  • ParameterTypes——参数类型

  • ParameterValues——参数值

绑定SQL准备语句的参数值。选择所有参数在SQL事先准备好的声明中使用他们的数字指标。指定的值绑定产品编号,数量,价格,库存日期。在数据库中匹配日期的格式。的bindParamValues功能更新中的值ParameterValues财产的pstmt对象。

选择= (1 2 3 4);值={1000,55岁,“2019-04-25 00:00:00.000”};pstmt = bindParamValues (pstmt、选择值)
pstmt = SQLPreparedStatement属性:SQLQuery:“插入inventoryTable值(?,?,?,?)ParameterCount: 4 ParameterTypes: ["numeric" "numeric" "numeric" "string"] ParameterValues: {[20] [1000] [55] ["2019-04-25 00:00:00.000"]}

从MATLAB插入数据到数据库使用绑定参数值。执行SQL插入声明使用执行函数。

execute(康涅狄格州,pstmt)

显示数据库表中插入数据inventoryTable。表中最后一行包含插入的数据。

表名=“inventoryTable”;data = sqlread(康涅狄格州,表名);尾(数据,4)
ans =4×4表productNumber数量价格inventoryDate _________________ ________ _____ ___________________________ 11 567 {2012-09-11 00:30:24”} 1278 0 {' 2010-10-29 18:17:47} 13 1700 14.5 {' 2009-05-24 10:58:59} 1000 55 {' 2019-04-25 00:00:00.000 '}

准备关闭SQL语句和数据库连接。

关闭(pstmt)关闭(康涅狄格州)

输入参数

全部折叠

数据库连接,指定为ODBC连接对象或JDBC连接对象创建使用数据库函数。

SQL语句,指定为一个特征向量或字符串标量。可以是任何有效的非SQL语句选择SQL语句。

SQL语句可以是一个存储过程,不返回任何结果集。为存储过程返回一个或多个结果集,使用获取函数。对于返回输出参数的程序,使用runstoredprocedure函数。

关于SQL查询语言的信息,请参阅SQL教程

例子:“DROP TABLE病人”

数据类型:字符|字符串

SQL事先准备好的声明中,指定为一个SQLPreparedStatement对象。

版本历史

介绍了R2018b