我有一个sql server 2005数据库,其中有一个数据类型位列的表。当我查看SQL Server管理工作室中的数据时,我将列值看作0或1,当我用SAS抽取时,我看到0或-1,就像SAS正在否定1值。任何人对此有解释?谢谢。sql服务器中的SAS读取位数据类型2005
7
A
回答
5
我想你必须使用libname oledb
从SAS连接到SQL Server。我能在这里复制您的问题: -
SQL Server代码使用OLEDB
libname imm oledb provider=sqloledb
properties=(
"Integrated Security"=SSPI
"Persist Security Info"=False
"Initial Catalog"=test
"Data Source"=localhost
);
proc print data=imm.tbl; run;
打印出来是生成伪数据
create table dbo.tbl (
tblId int identity(1,1) not null
constraint pk_tbl_tblId primary key,
bool bit not null,
)
go
insert into dbo.tbl(bool) values(0)
insert into dbo.tbl(bool) values(1)
SAS代码: -
Obs tblId bool
1 1 0
2 2 -1
使用PROC的SQL代码SQL
看起来像使用PROC SQL应该解决您的问题。
proc sql noprint;
connect to sqlservr (
server='localhost'
database='test'
'Integrated Security'='SSPI'
'Persist Security Info'='False'
);
create table test as
select *
from connection to sqlservr (
select * from dbo.tbl
);
disconnect from sqlservr;
quit;
proc print data=test; run;
打印出来是: -
Obs tblId bool
1 1 0
2 2 1
+2
这将适用于我,但这将需要任何连接到数据库与SAS的人被要求使用proc sql;我想我将不得不转换为tinyint,以确保数据的一致性,而不管SAS如何访问。 – Haeflinger 2011-03-17 15:35:34
相关问题
- 1. 在SQL服务器数据类型映射2005
- 2. XML数据类型和Sql服务器2005
- 3. 在读取SAS中的XML数据时设置数据类型
- 4. 数据库引擎... SQL服务器2005
- 5. Sql Server 2005数据类型
- 6. SQL服务器:varchar数据类型
- 7. SQL-服务器时间数据类型
- 8. sql server 2005 xquery读取xml类型
- 9. 无法更新位数据类型sql服务器的网页
- 10. SQL Server 2005中的XML数据类型
- 11. SQL数据读取器类
- 12. SQL服务器数据库中的主键数据类型
- 13. 子串在SQL服务器XML数据类型的列值的2005
- 14. 从位于服务器的数据库读取数据android
- 15. SQL Server链接服务器错误定位服务器2005
- 16. OPC UA如何从服务器读取数据类型
- 17. 列表类型的Sql服务器数据类型
- 18. 从SAS到SQL服务器的多个缺失类型
- 19. 从多个服务器提取数据SQL 2005 SSIS
- 20. 测量Sql服务器数据库中的读取操作
- 21. Sql server 2005的数据类型
- 22. SQL Server 2005的日期数据类型
- 23. sql 2005服务器角色
- 24. 微软SQL服务器2005
- 25. SQL服务器中的System.Version的数据类型
- 26. 从SQL读取数据到服务C#
- 27. sql server 2005中的链接服务器
- 28. 什么数据类型是SQL服务器中的GUID?
- 29. 返回SQL服务器中的复杂数据类型
- 30. SQL服务器中的几何和地理数据类型
这仍然是在SAS 9.3的问题,所以我们在设计我们的表,以避免BIT数据类型。不知道为什么,觉得应该有一个关于此的SAS注释.. – 2016-06-28 13:20:32