databaseImportOptions
定义数据库数据的导入选项
描述
例子
使用导入选项从数据库表导入数据
当从数据库表导入数据时,自定义导入选项。控件的导入选项SQLImportOptions
对象。然后,为不同的数据库列定制导入选项。使用sqlread
函数。
本例使用patients.xls
文件,其中包含列性别
,位置
,SelfAssessedHealthStatus
,吸烟者
.该示例还使用Microsoft®SQL Server®Version 11.00.2100数据库和Microsoft SQL Server Driver 11.00.5058。
使用Windows®身份验证创建到Microsoft SQL Server数据库的数据库连接。请指定空用户名和密码。
数据源=“MS SQL Server认证”;Conn =数据库(数据源,”,”);
将患者信息加载到MATLAB®工作区中。
患者=可读(“patients.xls”);
创建病人
数据库表采用患者信息。
表名=“病人”;sqlwrite(康涅狄格州、表、病人)
创建一个SQLImportOptions
对象使用病人
数据库表和databaseImportOptions
函数。
opts = databaseImportOptions(conn,tablename)
opts = SQLImportOptions with properties: excludeduplates: false VariableNamingRule: 'modify' VariableNames:{'姓氏','性别','年龄'…变量类型:{'char', 'char', 'double'…SelectedVariableNames:{'姓','性别','年龄'…FillValues: {", ", NaN…和7个}VariableOptions:显示所有10个VariableOptions
控件中所选变量的当前导入选项SelectedVariableNames
的属性SQLImportOptions
对象。
vars = options . selectedvariablenames;varOpts = getoptions(opts,vars)
varOpts = 1 x10 SQLVariableImportOptions数组属性:变量选择:(1)|(2)|(3)|(4)|(5)|(6)|(7)|(8)|(9)|(10)名称:“姓”|“性别”|“年龄”|“位置”|“高度”|“重量”|“烟民”|“收缩”|“舒张期”|“SelfAssessedHealthStatus”类型:“字符”|“字符”|“双重”|“字符”|“双重”|“双重”|“双重”|“双重”|“双重”|“字符”MissingRule:“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”FillValue:" | " | NaN | " | NaN | NaN | NaN | NaN | NaN | "要访问每个变量的子属性,使用getoptions
类型的数据类型性别
,位置
,SelfAssessedHealthStatus
,吸烟者
变量使用setoption
函数。因为性别
,位置
,SelfAssessedHealthStatus
变量表示一个有限的重复值集合,将其数据类型更改为分类
.因为吸烟者
变量存储值0
而且1
,将其数据类型更改为逻辑
.然后,显示更新后的导入选项。
选项= setoptions(选项,{“性别”,“位置”,“SelfAssessedHealthStatus”},...“类型”,“分类”);Opts = setoptions(选项,“抽烟”,“类型”,“逻辑”);varOpts = getoptions(opts,{“性别”,“位置”,“抽烟”,...“SelfAssessedHealthStatus”})
varOpts = 1x4带有属性的SQLVariableImportOptions数组:变量选项:(1)|(2)|(3)|(4)名称:'性别' | '位置' | '吸烟者' | 'SelfAssessedHealthStatus'类型:'categorical' | 'categorical' | 'logical' | 'categorical' missingule: 'fill' | 'fill' | 'fill' | 'fill' FillValue:| | 0 | 要访问每个变量的子属性,使用getoptions
导入病人
数据库表使用sqlread
函数,并显示表的最后8行。
Data = sqlread(conn,tablename,opts);尾(数据)
ans =8×10的表LastName性别年龄身高体重吸烟者收缩压舒张压SelfAssessedHealthStatus位置 _____________ ______ ___ _________________________ ______ ______ ______ ________ _________ ________________________ {' 福斯特的}女圣玛丽医疗中心70 124错误130 91公平{冈萨雷斯的}男性48个县综合医院71年174错误123 79好{“科比”}女性48个县综合医院66年134错误129 73优秀{‘亚历山大’}男性25县综合医院69 171真正的128 99好{'拉塞尔'}男44 VA医院69 188真124 92好{'格里芬'}男49县总医院70 186假119 74公平{'迪亚兹'}男45县总医院68 172真136 93好{'海斯'}男48县总医院66 177假114 86公平
显示导入数据的摘要。的sqlread
函数将导入选项应用于导入数据中的变量。
总结(数据)
变量:姓:100×1单元阵列特征向量的性别:100×1分类值:女性53岁男性47年龄:100×1双值:25分钟39马克斯50位置中位数:100×1分类值:县综合医院39 s 24 VA医学中心的圣玛丽医院37高度:100×1双值:60分钟中等67 Max 72重量:100×1双值:111分钟142.5 Max 202吸烟者中位数:100×1逻辑值:对34个错66收缩压:100×1双值:109分钟122 Max 138舒张中位数:100×1 double值:Min 68中位数81.5 Max 99 SelfAssessedHealthStatus: 100×1 categorical值:Excellent 34 Fair 15 Good 40 Poor 11
删除病人
数据库表使用执行
函数。
Sqlquery = [“drop table”表名);execute(康涅狄格州,sqlquery)
关闭数据库连接。
关上(康涅狄格州)
使用导入选项从SQL查询中导入数据
当从数据库上的SQL查询结果导入数据时,自定义导入选项。控件的导入选项SQLImportOptions
对象。然后,为SQL查询中的不同列定制导入选项。使用获取
函数。
本例使用employees_database.mat
文件,其中包含列first_name
,hire_date
,DEPARTMENT_NAME
.该示例还使用Microsoft®SQL Server®Version 11.00.2100数据库和Microsoft SQL Server Driver 11.00.5058。
使用Windows®身份验证创建到Microsoft SQL Server数据库的数据库连接。请指定空用户名和密码。
数据源=“MS SQL Server认证”;Conn =数据库(数据源,”,”);
将员工信息加载到MATLAB®工作区中。
Employeedata = load(“employees_database.mat”);
创建员工
而且部门
使用员工信息的数据库表。
Emps = employeedata.employees;Depts = employeedata.departments;sqlwrite(康涅狄格州,“员工”emp) sqlwrite(康涅狄格州,“部门”、部门)
创建一个SQLImportOptions
对象使用SQL查询和databaseImportOptions
函数。此查询检索销售经理或程序员员工的所有信息。
Sqlquery = ['SELECT * from employee e join department d '...(e.department_id = d.department_id) where job_id '...”(“IT_PROG”、“SA_MAN”)];opts = databaseImportOptions(conn,sqlquery)
VariableNamingRule: 'modify' VariableNames: {'employee_id', 'first_name', 'last_name'…变量类型:{'double', 'char', 'char'…SelectedVariableNames: {'employee_id', 'first_name', 'last_name'…和13个}FillValues: {NaN, ", "…和13个}VariableOptions:显示所有16个VariableOptions
控件中所选变量的当前导入选项SelectedVariableNames
的属性SQLImportOptions
对象。
vars = options . selectedvariablenames;varOpts = getoptions(opts,vars)
varOpts = 1 x16 SQLVariableImportOptions数组属性:变量选择:(1)|(2)|(3)|(4)|(5)|(6)|(7)|(8)|(9)|(10)|(11)|(12)|(13)| |(14)(15)|(16)名称:“employee_id”|“first_name”|“last_name”|“电子邮件”|“phone_number”|“hire_date”|“job_id”|“工资”|“commission_pct”|“manager_id”|“department_id”|“临时性”|“department_id”|“DEPARTMENT_NAME”|“manager_id”|“LOCATION_ID”类型:“双”|“字符”|“字符”|“字符”|“字符”|“字符”|“字符”|“双重”|“双重”|“双重”|“双重”|“双重”|“双重”|“字符”|“双重”|“双重”MissingRule:“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”FillValue:南 | '' | '' | '' | '' | '' | '' | 南|南|南|南|南|南|”|南|南访问sub-properties每个变量,使用getoptions
类型的数据类型hire_date
,DEPARTMENT_NAME
,first_name
变量使用setoption
函数。然后,显示更新后的导入选项。因为hire_date
存储日期和时间数据,将此变量的数据类型更改为datetime
.因为DEPARTMENT_NAME
指定重复值的有限集,则将此变量的数据类型更改为分类
.另外,将这个变量的名称改为小写。因为first_name
存储文本数据,将此变量的数据类型更改为字符串
.
Opts = setoptions(选项,“hire_date”,“类型”,“datetime”);Opts = setoptions(选项,“DEPARTMENT_NAME”,“名字”,“department_name”,...“类型”,“分类”);Opts = setoptions(选项,“first_name”,“类型”,“字符串”);vars = options . selectedvariablenames;varOpts = getoptions(opts,vars)
varOpts = 1 x16 SQLVariableImportOptions数组属性:变量选择:(1)|(2)|(3)|(4)|(5)|(6)|(7)|(8)|(9)|(10)|(11)|(12)|(13)| |(14)(15)|(16)名称:“employee_id”|“first_name”|“last_name”|“电子邮件”|“phone_number”|“hire_date”|“job_id”|“工资”|“commission_pct”|“manager_id”|“department_id”|“临时性”|“department_id”|“department_name”|“manager_id”|“LOCATION_ID”类型:“双”|“字符串”|“字符”|“字符”|“字符”|“datetime”|“字符”|“双重”|“双重”|“双重”|“双重”|“双重”|“双重”|“直言”|“双重”|“双重”MissingRule:“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”FillValue:南| <失踪 > | '' | '' | '' | NaT”| |南|南|南|南|南|南| <定义> |南|南访问sub-properties每个变量,使用getoptions
属性选择三个修改后的变量SelectVariableNames
财产。
选择。SelectedVariableNames = {“first_name”,“hire_date”,“department_name”};
方法导入并显示SQL查询的结果获取
函数。
Employees_data = fetch(conn,sqlquery,opts)
employees_data =10×3表first_name hire_date department_name ___________ ___________ _______________“Alexander”2006年1月3日IT“Bruce”2007年5月21日IT“David”2005年6月25日IT“Valli”2006年2月05日IT“Diana”2007年2月07日IT“John”2004年10月01日销售“Karen”2005年1月05日销售“Alberto”2005年3月10日销售“Gerald”2007年10月15日销售“Eleni”2008年1月29日销售
删除员工
而且部门
数据库表使用执行
函数。
执行(康涅狄格州,“DROP TABLE employees”)执行(康涅狄格州,'DROP TABLE department ')
关闭数据库连接。
关上(康涅狄格州)
使用指定目录和模式的导入选项从数据库表导入数据
当从数据库表导入数据时,自定义导入选项。控件的导入选项SQLImportOptions
对象。使用数据库编目和模式指定数据库表的位置。然后,为不同的数据库列定制导入选项。使用sqlread
函数。
本例使用patients.xls
文件,其中包含列性别
,位置
,SelfAssessedHealthStatus
,吸烟者
.该示例还使用Microsoft®SQL Server®Version 11.00.2100数据库和Microsoft SQL Server Driver 11.00.5058。
使用Windows®身份验证创建到Microsoft SQL Server数据库的数据库连接。请指定空用户名和密码。
数据源=“MS SQL Server认证”;Conn =数据库(数据源,”,”);
将患者信息加载到MATLAB®工作区中。
患者=可读(“patients.xls”);
创建病人
数据库表中的toy_store
数据库目录和dbo
使用患者信息的数据库模式。
表名=“病人”;sqlwrite(康涅狄格州、表名、病人、...“目录”,“toy_store”,“模式”,“dbo”)
创建一个SQLImportOptions
对象使用病人
数据库表和databaseImportOptions
函数。指定toy_store
数据库目录和dbo
用于数据库表位置的数据库模式。
opts = databaseImportOptions(conn,tablename,...“目录”,“toy_store”,“模式”,“dbo”);
控件中所选变量的当前导入选项SelectedVariableNames
的属性SQLImportOptions
对象。
vars = options . selectedvariablenames;varOpts = getoptions(opts,vars)
varOpts = 1 x10 SQLVariableImportOptions数组属性:变量选择:(1)|(2)|(3)|(4)|(5)|(6)|(7)|(8)|(9)|(10)名称:“姓”|“性别”|“年龄”|“位置”|“高度”|“重量”|“烟民”|“收缩”|“舒张期”|“SelfAssessedHealthStatus”类型:“字符”|“字符”|“双重”|“字符”|“双重”|“双重”|“双重”|“双重”|“双重”|“字符”MissingRule:“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”|“填补”FillValue:" | " | NaN | " | NaN | NaN | NaN | NaN | NaN | "要访问每个变量的子属性,使用getoptions
类型的数据类型性别
,位置
,SelfAssessedHealthStatus
,吸烟者
变量使用setoption
函数。因为性别
,位置
,SelfAssessedHealthStatus
变量表示一个有限的重复值集合,将其数据类型更改为分类
.因为吸烟者
变量存储值0
而且1
,将其数据类型更改为逻辑
.然后,显示更新后的导入选项。
选项= setoptions(选项,{“性别”,“位置”,“SelfAssessedHealthStatus”},...“类型”,“分类”);Opts = setoptions(选项,“抽烟”,“类型”,“逻辑”);varOpts = getoptions(opts,{“性别”,“位置”,“抽烟”,...“SelfAssessedHealthStatus”})
varOpts = 1x4带有属性的SQLVariableImportOptions数组:变量选项:(1)|(2)|(3)|(4)名称:'性别' | '位置' | '吸烟者' | 'SelfAssessedHealthStatus'类型:'categorical' | 'categorical' | 'logical' | 'categorical' missingule: 'fill' | 'fill' | 'fill' | 'fill' FillValue:| | 0 | 要访问每个变量的子属性,使用getoptions
导入病人
数据库表使用sqlread
函数,并显示表的最后8行。
数据= sqlread(conn,tablename,opts,“目录”,“toy_store”,“模式”,“dbo”);尾(数据)
ans =8×10的表LastName性别年龄身高体重吸烟者收缩压舒张压SelfAssessedHealthStatus位置 _____________ ______ ___ _________________________ ______ ______ ______ ________ _________ ________________________ {' 福斯特的}女圣玛丽医疗中心70 124错误130 91公平{冈萨雷斯的}男性48个县综合医院71年174错误123 79好{“科比”}女性48个县综合医院66年134错误129 73优秀{‘亚历山大’}男性25县综合医院69 171真正的128 99好{'拉塞尔'}男44 VA医院69 188真124 92好{'格里芬'}男49县总医院70 186假119 74公平{'迪亚兹'}男45县总医院68 172真136 93好{'海斯'}男48县总医院66 177假114 86公平
显示导入数据的摘要。的sqlread
函数将导入选项应用于导入数据中的变量。
总结(数据)
变量:姓:100×1单元阵列特征向量的性别:100×1分类值:女性53岁男性47年龄:100×1双值:25分钟39马克斯50位置中位数:100×1分类值:县综合医院39 s 24 VA医学中心的圣玛丽医院37高度:100×1双值:60分钟中等67 Max 72重量:100×1双值:111分钟142.5 Max 202吸烟者中位数:100×1逻辑值:对34个错66收缩压:100×1双值:109分钟122 Max 138舒张中位数:100×1 double值:Min 68中位数81.5 Max 99 SelfAssessedHealthStatus: 100×1 categorical值:Excellent 34 Fair 15 Good 40 Poor 11
删除病人
数据库表中的toy_store
数据库目录和dbo
数据库模式执行
函数。
Sqlquery = [DROP TABLE toy_store.dbo表名);execute(康涅狄格州,sqlquery)
关闭数据库连接。
关上(康涅狄格州)
输入参数
源
- - - - - -源
特征向量|字符串标量
源,指定为字符向量或字符串标量。使用源
参数input指定数据库表的名称或用于从数据库导入数据的SQL查询的名称。
例子:“inventorytable”
例子:“SELECT * FROM inventorytable”
数据类型:字符
|字符串
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。
在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字
在报价。
例子:opts = databaseImportOptions(conn,"inventorytable", " Catalog ", "toystore_doc", " Schema ", "dbo")
控件中导入数据的导入选项inventorytable
数据库表位于toystore_doc
目录和dbo
模式。
输出参数
选择
-数据库导入选项
SQLImportOptions
对象
数据库导入选项,返回为SQLImportOptions
对象。
版本历史
在R2018b中引入
Matlabコマンド
次のmatlabコマンドに対応するリンクがクリックされました。
コマンドをmatlabコマンドウィンドウに入力して実行してください。Webブラウザ,はMATLABコマンドをサポ,トしていません。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。