GVKun编程网logo

SQL Server-可以在CREATE TABLE中添加字段描述吗?(sql创建表时给字段添加说明)

10

在本文中,您将会了解到关于SQLServer-可以在CREATETABLE中添加字段描述吗?的新资讯,同时我们还将为您解释sql创建表时给字段添加说明的相关在本文中,我们将带你探索SQLServer-

在本文中,您将会了解到关于SQL Server-可以在CREATE TABLE中添加字段描述吗?的新资讯,同时我们还将为您解释sql创建表时给字段添加说明的相关在本文中,我们将带你探索SQL Server-可以在CREATE TABLE中添加字段描述吗?的奥秘,分析sql创建表时给字段添加说明的特点,并给出一些关于c# – Reactive框架消除了Observable.Create中的while循环、Error while preforming database login with the "sqlserver" driver Unable to create...、MS SQL SERVER 读取数据库中每个表的描述/注释以及表中字段/列的字段名,字段类型,字段描述/注释/说明等信息、mssql server CREATE DATABASE创建数据库代码的实用技巧。

本文目录一览:

SQL Server-可以在CREATE TABLE中添加字段描述吗?(sql创建表时给字段添加说明)

SQL Server-可以在CREATE TABLE中添加字段描述吗?(sql创建表时给字段添加说明)

我可以看到很多有关字段描述扩展属性的住处以及如何获得它的文章,但是在CREATE TABLE阶段添加这些内容一无所获。

我正在动态创建表,因此动态添加字段描述将是一件整洁的事情,但我看不到任何方法。

有没有人设法做到这一点?

答案1

小编典典

虽然您无法在中执行此操作CREATETABLE,但是可以使用以下方法在同一数据库脚本中同时执行该操作:

CREATE table T1 (id int , name char (20))EXEC   sp_addextendedproperty ''MS_Description'', ''Employee ID'', ''user'', dbo, ''table'', ''T1'', ''column'', idEXEC   sp_addextendedproperty ''MS_Description'', ''Employee Name'', ''user'', dbo, ''table'', ''T1'', ''column'', name

然后,您可以使用以下命令查看您的条目:

SELECT   *FROM   ::fn_listextendedproperty (NULL, ''user'', ''dbo'', ''table'', ''T1'', ''column'', default)

c# – Reactive框架消除了Observable.Create中的while循环

c# – Reactive框架消除了Observable.Create中的while循环

我正在使用一个可观察的字节流,从网络出来,我想把它带到一层抽象.格式有两个字节,包含下一条消息的长度.我想很好地适应反应框架.到目前为止,我感觉不太正确,所以我想知道我可能错过了什么技巧来消除这里的while循环.

这是我想到的概念:

public static IObservable<Stream> GetToplevelStreams(IObservable<byte> byteStreamArg) {
    return Observable.Create((IObserver<Stream>o)=>{
        bool done = false;
        var byteStream = byteStreamArg.Do(
            b => { },(ex) => { done = true; },() => { done = true; });
        while (!done)
        {
            var size = byteStream.Take(2).
                           Aggregate(0,(n,b) => (n << 8) + b).Single();
            var buf = byteStream.Skip(2).Take(size);
            var stream = new MemoryStream(buf.ToEnumerable().ToArray());
            if (!done)
            {
                o.OnNext(stream);
            }
        }
        return (() => {});
    });
}

解决方法

IObservable在这里有点奇怪 – 记住你正在返回一个“未来流列表” – 我实际上只是返回一个Stream,或者可能是IObservable< byte []>,其中每个数组代表一条消息.或者做得更好,并返回IObservable< ParsedMessage>

此外,你的While循环使这非同步并且行为奇怪.怎么样更像这样的东西:

public static IObservable<System.IO.Stream> GetToplevelStreams(IObservable<byte> byteStream)
{
    return Observable.Create((IObserver<System.IO.Stream> o) =>
    {
        int? size1=null;
        int? size=null;
        var buf = new MemoryStream();
        var subscription = byteStream.Subscribe(v =>
        {
            if (!size1.HasValue)
            {
                size1 = ((int)v) << 8;
            }
            else if (!size.HasValue)
            {
                size = size1.Value + v;
            }
            else
            {
                buf.WriteByte(v);
            }
            if (size.HasValue && buf.Length == size)
            {
                buf.Position = 0;
                o.OnNext(buf);
                buf.SetLength(0);
                size1 = null;
                size = null;
            }

        },(ex)=>o.OnError(ex),()=>o.OnCompleted());
        return () => subscription.dispose();
    });
}

Error while preforming database login with the

Error while preforming database login with the "sqlserver" driver Unable to create...

        今天在用MyElipse连sqlserver2008r2,新建一个Database Connection Driver,输入各种配置,点击Test Driver,出现了这个错误:“Error while preforming database login with the ’sqlserver‘ driver Unable to create connection.Check your URL“。于是检查url,怎么看都没有拼写错误啊。百度半天也没看出个所以然来。突然想起看了看项目配置文件里的url是怎么写的,这才发现问题。

        我竟忘了sqlserver2008的连接字符串的写法和以前是不一样的。于是把url改成 jdbc:sqlserver://localhost:1433 这才成功。我在Driver template里面选了Microsoft sql Server,它自动生成的url是这样的jdbc:microsoft:sqlserver://<server_name>:<1433>,我没注意直接填入localhost,于是连接不上。问题是它template里面没有一个选项是Microsoft sql Server 2008啊。我用的是MyEclipse 8.5。这个地方不注意很容易出错,浪费时间。

MS SQL SERVER 读取数据库中每个表的描述/注释以及表中字段/列的字段名,字段类型,字段描述/注释/说明等信息

MS SQL SERVER 读取数据库中每个表的描述/注释以及表中字段/列的字段名,字段类型,字段描述/注释/说明等信息

SELECT  表名 = CASE WHEN a.colorder=1 THEN d.name
                  ELSE ''''
             END,表说明 = CASE WHEN a.colorder=1 THEN ISNULL(f.value,'''')
                            ELSE ''''
                       END,字段序号 = a.colorder,字段名 = a.name,
        标识 = CASE WHEN COLUMNPROPERTY(a.id,a.name,''IsIdentity'')=1 THEN ''√''
                  ELSE ''×''
             END,
        主键 = CASE WHEN EXISTS ( SELECT  1
                                FROM    sysobjects
                                WHERE   xtype=''PK''
                                        AND name IN (
                                        SELECT  name
                                        FROM    sysindexes
                                        WHERE   indid IN (
                                                SELECT  indid
                                                FROM    sysindexkeys
                                                WHERE   id=a.id
                                                        AND colid=a.colid)) )
                  THEN ''√''
                  ELSE ''×''
             END,类型 = b.name,占用字节数 = a.length,
        长度 = COLUMNPROPERTY(a.id,a.name,''PRECISION''),
        小数位数 = ISNULL(COLUMNPROPERTY(a.id,a.name,''Scale''),0),
        允许空 = CASE WHEN a.isnullable=1 THEN ''√''
                   ELSE ''×''
              END,默认值 = ISNULL(e.text,''''),字段说明 = ISNULL(g.[value],'''')
FROM    syscolumns a
LEFT   JOIN systypes b
        ON a.xusertype=b.xusertype
INNER   JOIN sysobjects d
        ON a.id=d.id
           AND d.xtype=''U''
           AND d.name<>''dtproperties''
LEFT   JOIN syscomments e
        ON a.cdefault=e.id
LEFT   JOIN sys.extended_properties g
        ON a.id=g.major_id
           AND a.colid=g.minor_id
LEFT   JOIN sys.extended_properties f
        ON d.id=f.major_id
           AND f.minor_id=0 --where   d.name=''V_test''         --如果只查询指定表,加上此条件
ORDER   BY a.id,a.colorder;

查询出来的效果如图:

图片描述

mssql server CREATE DATABASE创建数据库代码

mssql server CREATE DATABASE创建数据库代码

mssql server create database创建代码
/*
if db_id(''test'') is not null drop database test
go
create database test
on primary (
name=test_dat_main1
,filename=''d:databasetest_dat_main1.mdf''
,size=3mb
,maxsize=unlimited
,filegrowth=5mb
),(
name=test_dat_main2
,filename=''d:databasetest_dat_main2.mdf''
,size=3mb
,maxsize=unlimited
,filegrowth=5mb
)
,filegroup test_dat_sub1 default (
name=test_dat_sub1
,filename=''d:databasetest_dat_sub1.mdf''
,size=2mb
,maxsize=unlimited
,filegrowth=5mb
),(
name=test_dat_sub2
,filename=''d:databasetest_dat_sub2.mdf''
,size=2mb
,maxsize=unlimited
,filegrowth=5mb
)
,filegroup test_dat_sub2 (
name=test_dat_sub3
,filename=''d:databasetest_dat_sub3.mdf''
,size=2mb
,maxsize=unlimited
,filegrowth=5mb
)
log on (
name=test_log1
,filename=''d:databasetest_log1.ldf''
,size=10mb
,maxsize=unlimited
,filegrowth=10mb
),(
name=test_log2
,filename=''d:databasetest_log2.ldf''
,size=10mb
,maxsize=unlimited
,filegrowth=10mb
)
collate chinese_prc_ci_as
with
db_chaining off
,trustworthy off

语法
create database database_name
    [ on
                { [ primary ] [ [ ,...n ]
        [ , [ ,...n ] ]
    [ log on { [ ,...n ] } ] }
    ]
    [ collate collation_name ]
    [ with ]
]
[;]

to attach a database
create database database_name
    on [ ,...n ]
    for { attach [ with ]
        | attach_rebuild_log }
[;]

::=
{
(
    name = logical_file_name ,
        filename = { ''os_file_name'' | ''filestream_path'' }
        [ , size = size [ kb | mb | gb | tb ] ]
        [ , maxsize = { max_size [ kb | mb | gb | tb ] | unlimited } ]
        [ , filegrowth = growth_increment [ kb | mb | gb | tb | % ] ]
) [ ,...n ]
}

::=
{
filegroup filegroup_name [ contains filestream ] [ default ]
    [ ,...n ]
}

::=
{
  [ db_chaining { on | off } ]
  [ , trustworthy { on | off } ]
}
::=
{
    enable_broker
  | new_broker
  | error_broker_conversations
}

create a database snahot
create database database_snapshot_name
    on
        (
        name = logical_file_name,
        filename = ''os_file_name''
        ) [ ,...n ]
    as snapshot of source_database_name
[;]

关于SQL Server-可以在CREATE TABLE中添加字段描述吗?sql创建表时给字段添加说明的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于c# – Reactive框架消除了Observable.Create中的while循环、Error while preforming database login with the "sqlserver" driver Unable to create...、MS SQL SERVER 读取数据库中每个表的描述/注释以及表中字段/列的字段名,字段类型,字段描述/注释/说明等信息、mssql server CREATE DATABASE创建数据库代码等相关内容,可以在本站寻找。

本文标签: