亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

[Python]Python/PHP如何查詢sql server中NTEXT

系統(tǒng) 2059 0

[Python]Python/PHP 如何查詢 sql server中 NTEXT 類型數(shù)據(jù)

Version

Date

Creator

Description

1.0.0 .1

2006-11-23

鄭昀

草稿

?

繼續(xù)閱讀之前,我們假設(shè)您熟悉以下知識:

n ???????? Python /?PHP

n ???????? SQL Server 2000 SP4 以上版本的 Microsoft sql server

n ???????? pymssql

n ???????? NTEXT 類型

本文討論了在 Python 中,如果利用 pymssql 來連接 Microsft Sql server 2000 SP4 以上版本數(shù)據(jù)庫查詢 NTEXT 類型數(shù)據(jù),如何成功返回?cái)?shù)據(jù)。

在PHP中類似問題也可以這么解決。

?

pymssql - Simple MSSQL Python extension module ,當(dāng)前我們使用的版本是

pymssql-0.7.4.win32-py2.4.exe

?

您可以遵循后文描述的執(zhí)行步驟,在此之前,我們先描述一個(gè)常見的錯(cuò)誤現(xiàn)象。

[ 常見錯(cuò)誤現(xiàn)象 1]

關(guān)鍵詞 ????? Unicode data in a Unicode-only collation or ntext data

cannot be sent to clients using DB-Library

表象 ????????? 如果你的 sql server 2000 sp4以上版本的 數(shù)據(jù)庫中有一個(gè)字段是 NTEXT 類型,那么當(dāng)你使用 pymssql 來做查詢的時(shí)候,您可能得到如下錯(cuò)誤:

?

錯(cuò)誤日志

MS SQL message: ntext data cannot be sent to clients using DB-Library (such as ISQL) or ODBC version 3.7 or earlier. (severity 16)

_mssql.error: SQL Server message 4004, severity 16, state 1, line 1:

Unicode data in a Unicode-only collation or ntext data cannot be sent

to clients using DB-Library (such as ISQL) or ODBC version 3.7 or earlier.

?

?

解釋 ?????????

這是因?yàn)槲覀兊? pymssql 使用早期的 ODBC 函數(shù)集來獲取數(shù)據(jù)。而微軟后來引入了 ntext nvarchar 類型,而這是 Microsoft C-library 所不支持的。所以,連 pymssql 的說明檔里也這么建議:

注釋

It's the SQL Server complaining that it doesn't support pure Unicode

via TDS or older versions of ODBC. There's no fix for this error.

A workaround is to change the column type to NVARCHAR (it doesn't

exhibit this behaviour), or plain TEXT.

是不是真的要改變你的字段類型了呢?

可行的步驟:

只需要多執(zhí)行一步即可。

      
        
          1
        
      
      
        
          
        
        
          
            
            
          
        
      
    
      
        
          聲明一句話:
        
        
          
          
        
      
    
      
        
          queryTEXTSIZE = str("SET TEXTSIZE 65536") 
    
          
          
        
      
    
      
        65536
      
      
        
          是我限定要返回
        
      
      
        NTEXT
      
      
        
          字段數(shù)據(jù)的最大長度,你可以設(shè)置的更大一點(diǎn),比如
        
        
          
            1024000
          
            
            
          
        
      
    

2

然后執(zhí)行這句 sql 語句:

oConn =

_mssql.connect(databaseHost, databaseUserName, databaseUserPwd)

ret = oConn.query(queryTEXTSIZE)

table = oConn.fetch_array()

3

然后,聲明你的原來的那個(gè)獲取 NTEXT 字段的 sql 語句如下所示:

修改的 sql 語句

SELECT cast ( field_name AS TEXT ) AS field_name

這個(gè) field_name 所代表的字段本來類型是 NTEXT ,這里我們 CAST 它為 TEXT ,這就是一個(gè)技巧

4

接下來執(zhí)行你的這個(gè) sql 語句即可:

??? ret = oConn.query(query)

table = oConn.fetch_array()

?

[ 參考資料 ]

      
        
          
            1
          
          :《
        
      
      
        
          What means "Unicode data in a Unicode-only collation or ntext data cannot be sent to clients using DB-Library"?
        
      
      
        
            
            
          
        
      
    
?

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1409306


[Python]Python/PHP如何查詢sql server中NTEXT類型數(shù)據(jù)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 永久福利视频 | 5151四虎永久在线精品免费 | 我就色色综合网 | 欧美视频在线观在线看 | 黄wwwwww| 天天干夜夜操 | 四虎sihu新版影院亚洲精品 | 成人网18免费视频 | 欧美日韩综合精品一区二区三区 | 日韩精品久久久久久 | 成人短视频在线在线观看 | 欧美激情视频网址 | 四虎官方影库 | 国产亚洲精品美女2020久久 | 亚洲国产欧美在线人成 | 久久99热精品 | 欧美日韩视频一区二区 | 国产免费一区二区三区 | 福利在线国产 | 伊人999| 久久er热在这里只有精品85 | 99热精品久久只有精品黑人 | 久久精品国产福利国产秒 | 日日摸夜夜爽 | 国产精品亚洲欧美日韩一区在线 | 999小视频| 欧美午夜寂寞影院安卓列表 | 免费视频性 | 不卡的毛片 | 欧美一区二区三区影院 | 伊人久久久久久久久香港 | 亚洲综合国产一区二区三区 | 中文字幕一区在线观看 | 欧美专区在线观看 | 深夜天堂 | 国产在线播放一区二区 | 国产精品入口麻豆午夜 | 国产精品二区页在线播放 | 中文字幕在线观看不卡视频 | 国产全黄a一级毛片视频 | 亚洲91|