我有一個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