sqlwrite
插入MATLAB数据到数据库表
描述
例子
附加数据到现有表
使用ODBC连接从MATLAB®附加产品数据表到现有表在Microsoft®SQL Server®数据库中。
创建一个ODBC数据库连接到Microsoft SQL Server数据库与Windows®身份验证。指定一个空白的用户名和密码。数据库包含了表productTable
。
数据源=“MS SQL Server身份验证”;康涅狄格州=数据库(数据源,”,”);
检查数据库连接。如果消息
属性是空的,那么连接成功。
conn.Message
ans = []
查看现有的数据库表中productTable
在添加数据之前,其内容导入MATLAB和显示最后几行。
表名=“productTable”;行= sqlread(康涅狄格州、表);尾(行,3)
ans = 3×5表productNumber stockNumber supplierNumber unitCost productDescription ________ _____________ _________________……* * * 13 4.7082 e + 05 1012 17“煎饼”14 5.101 e + 05 1011 19“披肩”15 8.9975 e + 05 1011 20“零食”
创建一个MATLAB表包含一个产品的数据。
data =表(30、500000、1000,25岁,“魔方”,…“VariableNames”,{“productNumber”“stockNumber”…“supplierNumber”“unitCost”“productDescription”});
产品数据添加到数据库表中productTable
。
sqlwrite(康涅狄格州、表、数据)
数据库表的内容导入MATLAB又显示最后几行。结果产品包含插入一个新行。
行= sqlread(康涅狄格州、表);尾(行,4)
ans = 4×5表productNumber stockNumber supplierNumber unitCost productDescription ________ _____________ _________________……* * * 13 4.7082 e + 05 1012 17“煎饼”14 5.101 e + 05 1011 19“披肩”15 8.9975 e + 05 1011 20“零食”30 5 e + 05 1000 25“魔方”
关闭数据库连接。
关上(康涅狄格州)
将数据插入新表
使用ODBC连接从MATLAB®产品数据插入一个新表在Microsoft®SQL Server®数据库中。
创建一个ODBC数据库连接到Microsoft SQL Server数据库与Windows®身份验证。指定一个空白的用户名和密码。
数据源=“MS SQL Server身份验证”;康涅狄格州=数据库(数据源,”,”);
检查数据库连接。如果消息
属性是空的,那么连接成功。
conn.Message
ans = []
创建一个MATLAB表,其中包含两个产品的数据。下载188bet金宝搏
数据表= ((30、40)(500000;600000),(1000;2000),[25;30],…(“魔方”;“娃娃家”),“VariableNames”,{“productNumber”…“stockNumber”“supplierNumber”“unitCost”“productDescription”});
将产品数据插入一个新的数据库表toyTable
。
表名=“toyTable”;sqlwrite(康涅狄格州、表、数据)
数据库表的内容导入MATLAB和显示的行。结果包含插入两行产品。下载188bet金宝搏
行= sqlread(康涅狄格州,表名)
行= 2×5表productNumber stockNumber supplierNumber unitCost productDescription ________ _____________ _________________……* * * 30 5 e + 05 1000 25“魔方”40 6 e + 05 2000 30“娃娃家”
关闭数据库连接。
关上(康涅狄格州)
将数据插入新表时指定列类型
使用ODBC连接从MATLAB®产品数据插入一个新表在Microsoft®SQL Server®数据库中。指定列的数据类型在新的数据库表中。
创建一个ODBC数据库连接到Microsoft SQL Server数据库与Windows®身份验证。指定一个空白的用户名和密码。
数据源=“MS SQL Server身份验证”;康涅狄格州=数据库(数据源,”,”);
检查数据库连接。如果消息
属性是空的,那么连接成功。
conn.Message
ans = []
创建一个MATLAB表,其中包含两个产品的数据。下载188bet金宝搏
数据表= ((30、40)(500000;600000),(1000;2000),[25;30],…(“魔方”;“娃娃家”),“VariableNames”,{“productNumber”…“stockNumber”“supplierNumber”“unitCost”“productDescription”});
将产品数据插入一个新的数据库表toyTable
。使用“ColumnType”
名称-值对参数和一个字符串数组指定数据类型的数据库表中的所有列。
表名=“toyTable”;coltypes = [“数字”“数字”“数字”“数字”“varchar (255)”];sqlwrite(康涅狄格州、表、数据“ColumnType”coltypes)
数据库表的内容导入MATLAB和显示的行。结果包含插入两行产品。下载188bet金宝搏
行= sqlread(康涅狄格州,表名)
行= 2×5表productNumber stockNumber supplierNumber unitCost productDescription ________ _____________ _________________……* * * 30 5 e + 05 1000 25“魔方”40 6 e + 05 2000 30“娃娃家”
关闭数据库连接。
关上(康涅狄格州)
向表插入单元阵列
使用ODBC连接从MATLAB®产品数据插入一个新表在Microsoft®SQL Server®数据库中。将数据存储为一个细胞数组插入到新的数据库表。
创建一个ODBC数据库连接到Microsoft SQL Server数据库与Windows®身份验证。指定一个空白的用户名和密码。
数据源=“MS SQL Server身份验证”;康涅狄格州=数据库(数据源,”,”);
检查数据库连接。如果消息
属性是空的,那么连接成功。
conn.Message
ans = []
创建一个单元阵列,其中包含两个产品的数据。下载188bet金宝搏
c ={30、500000、1000, 25岁,“魔方”30岁的;40、600000、2000“娃娃家”};
细胞数组转换为一个表指定列名MATLAB。
colnames = {“productNumber”“stockNumber”“supplierNumber”“unitCost”…“productDescription”};data = cell2table (c,“VariableNames”,colnames);
将产品数据插入一个新的数据库表toyTable
。
表名=“toyTable”;sqlwrite(康涅狄格州、表、数据)
数据库表的内容导入MATLAB和显示的行。结果包含插入两行产品。下载188bet金宝搏
行= sqlread(康涅狄格州,表名)
行= 2×5表productNumber stockNumber supplierNumber unitCost productDescription ________ _____________ _________________……* * * 30 5 e + 05 1000 25“魔方”40 6 e + 05 2000 30“娃娃家”
关闭数据库连接。
关上(康涅狄格州)
插入结构表
使用ODBC连接从MATLAB®产品数据插入一个新表在Microsoft®SQL Server®数据库中。将数据存储为结构插入到新的数据库表。
创建一个ODBC数据库连接到Microsoft SQL Server数据库与Windows®身份验证。指定一个空白的用户名和密码。
数据源=“MS SQL Server身份验证”;康涅狄格州=数据库(数据源,”,”);
检查数据库连接。如果消息
属性是空的,那么连接成功。
conn.Message
ans = []
创建一个结构数组,其中包含两个产品的数据。下载188bet金宝搏
(1)。productNumber = 30;(1)。stockNumber = 500000;(1)。supplierNumber = 1000;(1)。unitCost = 25;(1)。productDescription =“魔方”;(2)。productNumber = 40;(2)。stockNumber = 600000;(2)。supplierNumber = 2000;(2)。unitCost = 30;(2)。productDescription =“娃娃家”;
结构转换为一个MATLAB表。
data = struct2table(年代);
将产品数据插入一个新的数据库表toyTable
。
表名=“toyTable”;sqlwrite(康涅狄格州、表、数据)
数据库表的内容导入MATLAB和显示的行。结果包含插入两行产品。下载188bet金宝搏
行= sqlread(康涅狄格州,表名)
行= 2×5表productNumber stockNumber supplierNumber unitCost productDescription ________ _____________ _________________……* * * 30 5 e + 05 1000 25“魔方”40 6 e + 05 2000 30“娃娃家”
关闭数据库连接。
关上(康涅狄格州)
数字数组插入表中
使用ODBC连接将从MATLAB®销量数据插入到现有表在Microsoft®SQL Server®数据库中。将数据存储为数字数组插入到现有的数据库表中。
创建一个ODBC数据库连接到Microsoft SQL Server数据库与Windows®身份验证。指定一个空白的用户名和密码。数据库包含了salesVolume
表。
数据源=“MS SQL Server身份验证”;康涅狄格州=数据库(数据源,”,”);
检查数据库连接。如果消息
属性是空的,那么连接成功。
conn.Message
ans = []
创建一个数字数组,其中包含月度销量数据为一个特定的股票数量。指定现有的数据库表的列的名称salesVolume
。
n = [100000 1000 0 2000 500 3000 450 600 700 750 1450 0 0];colnames = {“StockNumber”“1月”“2”“3”“4”“可能”…“6月”“7”“八月”“9”“十月”11月的12月的};
MATLAB数值数组转换为一个表。
data = array2table (n,“VariableNames”,colnames);
销量数据插入到数据库表中salesVolume
。
表名=“salesVolume”;sqlwrite(康涅狄格州、表、数据)
数据库表的内容导入MATLAB和显示最后三行。结果包含插入一个新行销量数据。
行= sqlread(康涅狄格州、表);尾(行,3)
ans = 3×13表StockNumber 1月2月3月4月5月6月7月8月9月10月11月12月___________累积________ _____ _____ _____ _____上解释说5.101 e + 05年235 1800 1040 900 750 700 400 350 500 100 3000 18000 8.9975 e + 05年123 1700 823 701 689 621 545 421 495 650 4200 11000 1 e + 05 1000 0 2000 500 3000 450 600 700 750 1450 0 0
关闭数据库连接。
关上(康涅狄格州)
插入日期数量表
使用ODBC连接插入从MATLAB®到现有表库存数据在Microsoft®SQL Server®数据库中。插入一个日期存储为一个日期号码到现有的数据库表中。
创建一个ODBC数据库连接到Microsoft SQL Server数据库与Windows®身份验证。指定一个空白的用户名和密码。数据库包含了表inventoryTable
。
数据源=“MS SQL Server身份验证”;康涅狄格州=数据库(数据源,”,”);
检查数据库连接。如果消息
属性是空的,那么连接成功。
conn.Message
ans = []
创建一个数字数组,其中包含库存数据为一个特定的产品,包括数量的日期731011年
。指定现有的数据库表的列的名称inventoryTable
。
n = [25 1000 50 731011];colnames = {“productNumber”“数量”“价格”“inventoryDate”};
MATLAB数值数组转换为一个表。
data = array2table (n,“VariableNames”,colnames);
库存数据的日期值转换为一个datetime
数组中。的sqlwrite
函数不接受日期数字作为插入一个有效的数据类型。
n = data.inventoryDate;数据。inventoryDate = datetime (n,“ConvertFrom”,“datenum”);
导入数据库表的内容inventoryTable
在MATLAB和显示最后几行。
表名=“inventoryTable”;行= sqlread(康涅狄格州、表);尾(行,3)
ans = 3×4表productNumber数量价格inventoryDate _________________ ________ _____ _________________________ 11 567年11 2012-09-11 00:30:24.000 12 1278年22 2010-10-29 18:17:47.000 13 1700年17“2009-05-24 10:58:59.000”
将库存数据插入到数据库表中inventoryTable
。指定表的模式存储使用“模式”
名称-值对的论点。
sqlwrite(康涅狄格州、表、数据“模式”,“dbo”)
数据库表的内容导入MATLAB又显示最后几行。结果包含插入一个新行库存数据。
行= sqlread(康涅狄格州、表);尾(行,4)
ans = 4×4表productNumber数量价格inventoryDate _________________ ________ _____ _________________________ 11 567年11 2012-09-11 00:30:24.000 12 1278年22 2010-10-29 18:17:47.000 13 1700年17 2009-05-24 10:58:59.000 25 1000 50 2001-06-09 00:00:00.000的
关闭数据库连接。
关上(康涅狄格州)
插入零
数字表
使用ODBC连接将从MATLAB®销量数据插入到现有表在Microsoft®SQL Server®数据库中。插入零
数字到现有的数据库表中。
创建一个ODBC数据库连接到Microsoft SQL Server数据库与Windows®身份验证。指定一个空白的用户名和密码。数据库包含了表salesVolume
。
数据源=“MS SQL Server身份验证”;康涅狄格州=数据库(数据源,”,”);
检查数据库连接。如果消息
属性是空的,那么连接成功。
conn.Message
ans = []
创建一个数字数组,其中包含月度销量数据为一个特定的股票数量,并包括一个零
号码。的值正
表明零
价值。指定现有的数据库表的列的名称salesVolume
。
n =[100000正0 2000 500 3000 450 600 700 750 1450 0 0];colnames = {“StockNumber”“1月”“2”“3”“4”“可能”…“6月”“7”“八月”“9”“十月”11月的12月的};
MATLAB数值数组转换为一个表。
data = array2table (n,“VariableNames”,colnames);
转换正
的价值1月
变量来南
。的sqlwrite
函数不接受正
值作为有效的插入缺失的数据。
数据。1 =南;
导入数据库表的内容salesVolume
在MATLAB和显示最后几行。
表名=“salesVolume”;行= sqlread(康涅狄格州、表);尾(行,3)
ans = 3×13表StockNumber 1月2月3月4月5月6月7月8月9月10月11月12月___________累积________ _____ _____ _____ _____上解释说4.7082 e + 05年3100 9400 1540 1500 1350 1190 900 867 923 1400 3000 35000 5.101 e + 05年235 1800 1040 900 750 700 400 350 500 100 3000 18000 8.9975 e + 05年123 1700 823 701 689 621 545 421 495 650 4200 11000
销量数据插入到数据库表中salesVolume
。
sqlwrite(康涅狄格州、表、数据)
数据库表的内容导入MATLAB又显示最后几行。结果包含插入一个新行销量数据。
行= sqlread(康涅狄格州、表);尾(行,4)
ans = 4×13表StockNumber 1月2月3月4月5月6月7月8月9月10月11月12月___________累积________ _____ _____ _____ _____上解释说4.7082 e + 05年3100 9400 1540 1500 1350 1190 900 867 923 1400 3000 35000 5.101 e + 05年235 1800 1040 900 750 700 400 350 500 100 3000 18000 8.9975 e + 05年123 1700 823 701 689 621 545 421 495 650 4200 11000 1 e + 05南0 2000 500 3000 450 600 700 750 1450 0 0
关闭数据库连接。
关上(康涅狄格州)
插入零
字符串表
使用ODBC连接从MATLAB®产品数据插入到现有表在Microsoft®SQL Server®数据库中。插入一个零
字符串到现有的数据库表中。
创建一个ODBC数据库连接到Microsoft SQL Server数据库与Windows®身份验证。指定一个空白的用户名和密码。数据库包含了表productTable
。
数据源=“MS SQL Server身份验证”;康涅狄格州=数据库(数据源,”,”);
检查数据库连接。如果消息
属性是空的,那么连接成功。
conn.Message
ans = []
创建一个MATLAB表,它包含一个产品的数据,包括一个零
的价值productDescription
变量。
data =表([30],[500000],[1000],[25],…(“零”),“VariableNames”,{“productNumber”…“stockNumber”“supplierNumber”“unitCost”“productDescription”});
转换零
的价值productDescription
变量来”“
。的sqlwrite
函数不接受零
值作为有效的插入缺失的数据。
data.productDescription (1) =”“;
导入现有的数据库表的内容productTable
在MATLAB和显示最后几行。
表名=“productTable”;行= sqlread(康涅狄格州、表);尾(行,3)
ans = 3×5表productNumber stockNumber supplierNumber unitCost productDescription ________ _____________ _________________……* * * 13 4.7082 e + 05 1012 17“煎饼”14 5.101 e + 05 1011 19“披肩”15 8.9975 e + 05 1011 20“零食”
将产品数据插入到数据库表中productTable
。
sqlwrite(康涅狄格州、表、数据)
数据库表的内容导入MATLAB又显示最后几行。结果产品包含插入一个新行。
行= sqlread(康涅狄格州、表);尾(行,4)
ans = 4×5表productNumber stockNumber supplierNumber unitCost productDescription ________ _____________ _________________……* * * 13 4.7082 e + 05 1012 17“煎饼”14 5.101 e + 05 1011 19“披肩”15 8.9975 e + 05 1011 20“零食”30 5 e + 05 1000 25”
关闭数据库连接。
关上(康涅狄格州)
部分数据插入到表中
使用ODBC连接插入两列从MATLAB®到现有的库存数据表和一些列在Microsoft®SQL Server®数据库中。插入的数据后,数据库表包含前两列中的数据。其他列有空白的条目插入的行数据。
创建一个ODBC连接到SQL Server数据库与Windows®身份验证。指定一个空白的用户名和密码。数据库包含了表inventoryTable
库存数据。
数据源=“MS SQL Server身份验证”;康涅狄格州=数据库(数据源,”“,”“);
创建一个表有两列数据的产品编号和数量。这些数据代表了两个产品插入。下载188bet金宝搏
数据表= ((14、15),(350;400),“VariableNames”,(“productNumber”“数量”]);
将库存数据插入到数据库表中inventoryTable
。此表包含四列:产品编号,数量,价格,库存日期。在这种情况下,每个产品的产品编号和数量插入已知但价格和库存日期未知。
表名=“inventoryTable”;sqlwrite(康涅狄格州、表、数据)
数据库表的内容导入MATLAB和显示最后几行。结果包含两个新行插入库存数据。的sqlwrite
最后两列函数插入空白的条目。
行= sqlread(康涅狄格州、表);尾(行,3)
ans =3×4表productNumber数量价格inventoryDate _________________ ________ _____ _______________________ 13 1700 14.5{' 2009-05-24 10:58:59} 14 350 15 400年南南{0×0字符}{0×0字符}
关闭数据库连接。
关上(康涅狄格州)
输入参数
的表
- - - - - -数据库表名
字符串标量|特征向量
数据库表名称,指定为字符串标量或字符向量表示数据库中的一个表的名称。
例子:“员工”
数据类型:字符串
|字符
数据
- - - - - -数据插入
表
数据插入到一个数据库表,指定为一个表。
在MATLAB中有效数据类型表:
数字数组
单元格数值数组的数组
单元阵列的特征向量
字符串数组
Datetime数组
持续时间数组
逻辑阵列
单元阵列逻辑数组
数字数组可以包含这些数据类型:
int8
uint8
int16
uint16
int32
uint32
int64
uint64
单
双
日期和时间数据,支持的格式是:金宝app
日期-
“yyyy-MM-dd”
时间:
“hh: mm: ss”
时间戳,
“yyyy-MM-dd HH: mm: ss”
如果指定的日期和时间数据在一个无效的格式,然后sqlwrite
函数自动将数据转换为一个支持的格式。金宝app
如果特征向量的细胞数组或字符串数组中指定一个无效的格式,然后sqlwrite
函数允许数据库驱动程序检查格式。如果格式是意想不到的,那么数据库驱动程序抛出一个错误。
你可以在现有数据库插入数据表或一个新的数据库表。变量的数据类型数据
取决于数据库表是否存在。有效的数据类型,看到现有表的数据类型和新表的数据类型。
请注意
的sqlwrite
功能只支持金宝app表
数据类型的数据
输入参数。插入数据存储在一个结构,单元阵列,或数字矩阵,将数据转换成表
通过使用struct2table
,cell2table
,array2table
函数,分别。
的sqlwrite
功能不支持数据库的偏好金宝appNullNumberWrite
和NullStringWrite
。插入缺失的数据,看看接受了缺失的数据。
例子:表((10、20),{' M '; ' F '})
现有表的数据类型
MATLAB表的变量名称必须匹配的数据库表的列的名称。的sqlwrite
函数是区分大小写的。
当你将数据插入数据库表,使用的数据类型如下表所示,确保数据正确的数据类型。这个表匹配的有效MATLAB表的数据类型变量数据库列的数据类型。例如,当您将数据插入数据库的列布尔
数据类型,确保相应的MATLAB表中的变量是一个逻辑数组或单元阵列逻辑数组。
MATLAB表的数据类型变量 | 现有数据库列的数据类型 |
---|---|
数字数组或单元格数值数组的数组 | 数字 |
|
日期 ,时间 ,或DATETIME |
逻辑阵列的逻辑数组或单元阵列 | 位 或布尔 |
单元阵列特征向量数组或字符串 |
|
新表的数据类型
新数据库表指定表名必须是唯一的数据库中的所有表。
在MATLAB中有效数据类型表:
数字数组
单元阵列的特征向量
字符串数组
Datetime数组
持续时间数组
逻辑阵列
的sqlwrite
函数忽略了任何无效的变量类型和插入只有有效的变量从MATLAB作为一个新的数据库表列。
的sqlwrite
函数将变量的数据类型转换为默认数据类型列的数据库表中。下表匹配的有效MATLAB表的数据类型变量默认数据库列的数据类型。
MATLAB表的数据类型变量 | 默认的数据库列的数据类型 |
---|---|
数字数组或单元格数值数组的数组 | 数字 |
Datetime数组 |
时间戳 |
持续时间数组 |
时间 |
逻辑阵列 | 数字 |
字符串数组 |
请注意 本专栏的大小等于字符串的最大长度的总和在字符串数组和100年。 |
单元阵列的特征向量 |
请注意 本专栏的大小等于最大长度之和单元阵列的一个特征向量和100年。 |
指定特定于数据库的列数据类型的默认值,使用“ColumnType”
名称-值对的论点。例如,您可以指定“ColumnType”、“长整型数字”
创建一个长整型数字
新的数据库表中的列。
同时,使用“ColumnType”
名称-值对参数,您可以指定其他数据类型并不在默认列表。例如,插入图片、指定“ColumnType”、“图像”
。
接受了缺失的数据
接受了缺失数据的数据插入数据库的数据类型取决于MATLAB变量和数据类型的列的表在数据库中。下表的数据类型相匹配的MATLAB表变量的数据类型的数据库列和指定接受缺失的数据使用在每种情况下。
MATLAB表的数据类型变量 | 数据库列的数据类型 | 接受了缺失的数据 |
---|---|---|
datetime 数组 |
日期 ,时间 ,或时间戳 |
NaT |
持续时间 数组 |
时间 |
南 |
双 或单 数组 |
|
南 |
单元阵列的双 或单 数组 |
|
南 ,[] ,或” |
单元阵列的特征向量 | 日期 ,时间 ,或时间戳 |
NaT的 或” |
单元阵列的特征向量 | 字符 ,Varchar 或其他文本数据类型 |
” |
字符串数组 | 日期 ,时间 ,或时间戳 |
”“ ,“NaT” ,或失踪 |
字符串数组 | 字符 ,Varchar 或其他文本数据类型 |
失踪 |
数据类型:表
名称-值参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:sqlwrite(康涅狄格州,“表”数据,“ColumnType”,(“数值”“时间戳”“形象”))
将数据插入一个新的数据库表命名的表
通过指定新的数据库表中的所有列的数据类型。
目录
- - - - - -数据库目录名
字符串标量|特征向量
数据库目录名称,指定为一个字符串标量或特征向量。一个目录作为模式的容器在数据库,包含相关的元数据信息。一个数据库可以有多个目录。
例子:目录= " toy_store "
数据类型:字符串
|字符
模式
- - - - - -数据库模式名
字符串标量|特征向量
数据库模式名称,指定为一个字符串标量或特征向量。一个模式定义了数据库表、视图、表之间的关系,和其他元素。数据库目录可以有大量的模式。
例子:模式= " dbo "
数据类型:字符串
|字符
ColumnType
- - - - - -数据库列类型
特征向量|字符串标量|单元阵列的特征向量|字符串数组
数据库列类型,指定为一个特征向量,字符串标量,单元阵列的特征向量,或字符串数组。使用这个名称-值对参数自定义数据类型的列在一个数据库表中。指定一个表中的每一列的列类型。
例子:“ColumnType”,“数字”“varchar (400)”)
数据类型:字符
|字符串
|细胞
版本历史
介绍了R2018a
MATLABコマンド
次のMATLABコマンドに対応するリンクがクリックされました。
コマンドをMATLABコマンドウィンドウに入力して実行してくださ了对いweb这类ブラウザーはMATLABコマンドをサポートしていません。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。