DatabaseSchemaReader Class
数据库结构读取器,用来读取数据库的所有表和视图的元数据。
Constructor
DatabaseSchemaReader
(
-
providerName
-
connectionString
Parameters:
-
providerName
String数据提供程序
-
connectionString
String数据库连接字符串
Example:
var reader = DatabaseSchemaReader.createSqlClientReader(
'Data Source=(LocalDB)\\v11.0;AttachDbFilename=E:\\node\\happy_node\\demo\\database_schem_reader\\test_database\\Test.mdf;Integrated Security=True;Connect Timeout=30'
);
reader.readAll(function (error, schema) {
console.log(util.inspect(schema, { depth: null }));
});
//schema 的结构如下:
{
tables: [
{
name: 'Table',
owner: 'dbo',
columns: [
{
dataType: {
isDateTime: false,
isFloat: false,
isInt: false,
isNumeric: false,
isString: false,
netDataType: 'System.Guid',
netDataTypeCSharpName: 'System.Guid',
typeName: 'uniqueidentifier'
},
dateTimePrecision: null,
dbDataType: 'uniqueidentifier',
defaultValue: null,
foreignKeyTableName: null,
identityIncrement: 1,
identitySeed: 1,
isForeignKey: false,
isIdentity: false,
isIndexed: false,
isIsPrimaryKey: true,
isUniqueKey: false,
length: null,
name: 'Id',
netName: null,
nullable: false,
nullableIndicator: '',
ordinal: 1,
precision: null,
scale: null,
tableName: 'Table'
}
]
}
],
views: [
//和tables的内容一样
]
};
Item Index
Methods
Properties
Methods
createSqlClientReader
(
DatabaseSchemaReader
static
-
connectionString
用'System.Data.SqlClient'做为ProviderName,创建一个DatabaseSchemaReader。
Parameters:
-
connectionString
String数据库连接字符串
Returns:
DatabaseSchemaReader:
数据库结构读取器
Example:
var connectionString = 'Data Source=(LocalDB)\\v11.0;AttachDbFilename=E:\\Test.mdf;Integrated Security=True;Connect Timeout=30';
var reader = DatabaseSchemaReader.createSqlClientReader(connectionString);
getOptions
()
Object
private
Returns:
Object:
readAll
(
async
-
callback
读取整个数据库的结构。
Parameters:
-
callback
Function读取成功后的回调函数,函数签名如下:
-
error
Error异常信息
-
schema
Object数据库结构
-
return
-
Returns:
Example:
reader.readAll(function (error, schema) {
console.log(util.inspect(schema, { depth: null }));
});
Properties
connectionString
String
private
providerName
String
private
SQL_CLIENT
String
final
static
用于 SQL Server 的 数据提供程序。
Default: 'System.Data.SqlClient'