列是character类型导出时怎么获取

列是character类型导出时怎么获取,第1张

1、首先建立转换,如图

获取系统信息中的变量如图

表输入中,连接的是postgresql,元数据如图

双击表输入得到test表,利用where语句中的?代替变量

注意,?代表转换中的命令参数1,默认的是character类型,而数据库中id是integer类型,所以要对?进行强制转换成numerica,注意要勾选替换sql语句里的变量,选择获取系统信息,其中命令参数1就是?,指的是(稍后在点击运行时出现)。文本文件输出选择指定地点即可。然后点击运行,如图

2、此时点击运行会报错,

主要是因为数据库中的text类型和character varing无法输出到txt中,将数据库中的text类型和character varing改成char类型即可,另外如果往数据库中输出,text类型和character varing是不会报错的。(text类型确实是不能输出到TXT中,但是能输出到csv文件中)

3、由于?是char类型,所以当数据库中id如果是char类型,则不用强转,可以直接比较。

SQL 2005及以上版本,执行如下,可获取字段及相关属性值

SELECT aname 字段名 ,

COLUMNPROPERTY(aid, aname, 'IsIdentity') 标识 ,

( CASE WHEN ( SELECT COUNT()

FROM sysobjects

WHERE ( name IN (

SELECT name

FROM sysindexes

WHERE ( id = aid )

AND ( indid IN (

SELECT indid

FROM sysindexkeys

WHERE ( id = aid )

AND ( colid IN (

SELECT

colid

FROM

syscolumns

WHERE

( id = aid )

AND ( name = aname ) ) ) ) ) ) )

AND ( xtype = 'PK' )

) > 0 THEN '1'

ELSE '0'

END ) 主键 ,

bname 类型 ,

COLUMNPROPERTY(aid, aname, 'PRECISION') AS 长度 ,

ISNULL(COLUMNPROPERTY(aid, aname, 'Scale'), 0) AS 小数位数 ,

( CASE WHEN aisnullable = 1 THEN '1'

ELSE '0'

END ) 允许空 ,

ISNULL(g[value], '') AS 字段说明

FROM syscolumns a

LEFT JOIN systypes b ON axtype = bxusertype

INNER JOIN sysobjects d ON aid = did

AND dxtype = 'U'

AND dname <> 'dtproperties'

LEFT JOIN syscomments e ON acdefault = eid

LEFT JOIN sysextended_properties g ON aid = gmajor_id

AND acolid = gminor_id

WHERE dname = 'AA_AppFile'

ORDER BY aid ,

acolorder

注:sql2000版本中,需要使用sysproperties来代替sysextended_properties。

您好,很高兴为您解答。

可以参考下论坛:>

以上就是关于列是character类型导出时怎么获取全部的内容,包括:列是character类型导出时怎么获取、sql server 查询列名,列数据类型,列长度 sql语句怎么写、怎么读取一个Access表中某一列的字段的数据类型等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9379049.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存