萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> 編程語言綜合 >> SQLcode錯誤代碼匯總和sqlstate=37000的解決方案

SQLcode錯誤代碼匯總和sqlstate=37000的解決方案

   今天小編在用Power Designer第二次反向數據庫時,遇到一個問題,如下:

  Unable to list the users.

  [Microsoft][ODBC SQL Server Driver][SQL Server]無法預定義語句

  SQLSTATE = 37000

  找了半天,才按如下方式得到解決。歸根結底,是偶在下述第二步驟中出錯了

  解決方案:

  步驟一:找到PD的DBMS,並修改其DBMS 配置,選擇菜單欄中的Database -> Change Current DBMS ,給DBMS選擇SQL Server2005。

  如圖:

SQLcode錯誤代碼匯總和sqlstate=37000的解決方案
SQLcode錯誤代碼匯總和sqlstate=37000的解決方案

  步驟二:修改 ODBC 連接方式,切記,使用向導生成 System DSN 時一定不要選擇 default database。

  重新配置ODBC連接,管理工具 -> 數據源ODBC -> 在用戶DSN Tab選項中點添加 ->出現創建新數據源的選擇框口,拖動滾動條到最下方,選擇SQL Srever點完成,出現新數據源命名窗口,名稱:BinODBC,在服務器下拉框中,選擇本地數據庫實例。點下一步 -> 選擇使用用戶ID和密碼的Sql server驗證 -> 輸入sql用戶名密碼 ->不要選擇"更改默認的數據庫為"選框 。直接下一步 -> 完成

SQLcode錯誤代碼匯總和sqlstate=37000的解決方案

  步驟三:從PD裡選擇File -> Reverse Engineer -> Database

 

  步驟四:選擇數據庫,選擇表,OK,大功造成。

  SQL code

  ODBC 錯誤信息

  根據 X/Open 和 SQL Access Group SQL CAE 規范 (1992) 所進行的定義,SQLERROR 返回 SQLSTATE 值。SQLSTATE 值是包含五個字符的字符串。下表列出了驅動程序可以為 SQLError 返回的 SQLSTATE 值。

  為 SQLSTATE 返回的字符串值由兩個字符的類值後接三個字符的子類值組成。類值 01 表明是一種警告,後跟隨 SQL_SUCCESS_WITH_INFO 的返回代碼。只要類值不是 01(IM 除外),則表明是一種錯誤,後跟隨 SQL_ERROR 的返回代碼。類 IM 專門用於表明從 ODBC 實現產生的警告和錯誤。任何類中子類值 000 均用於實現給定類中所定義條件。這種類值和子類值的分配方法由 SQL-92 定義。

  說明 通常由返回值 SQL_SUCCESS 表明成功執行了一個函數,但 SQLSTATE 00000 也表明成功執行。

  SQLSTATE ODBC API(驅動程序管理器)錯誤

  00000 成功

  01000 常規警告

  01002 斷開連接錯誤

  01004 數據被截斷

  01006 未廢除特權

  01S00 無效連接字符串特性

  01S01 行中的錯誤

  01S02 選項值已更改

  01S03 未更新或刪除任何行

  01S04 更新或刪除了多行

  01S05 取消操作被當成 FreeStmt/Close

  01S06 設法在結果返回第一個行集之前進行提取

  07001 參數個數錯誤

  07006 違反受限制的數據類型特性

  07S01 默認參數使用無效

  08001 無法連接到數據源

  08002 連接正在使用

  08003 連接未打開

  08004 數據源拒絕建立連接

  08007 在執行事務的過程中連接失敗

  08S01 通訊鏈接失敗

  21S01 插入值列表與列列表不匹配

  21S02 派生表的程度與列列表不匹配

  22001 字符串數據右截斷

  22002 需要指示符變量,但未提供

  22003 數字值超出范圍

  22005 分配時出錯

  22008 Datetime 字段溢出

  22012 被零除錯誤

  22026 字符串數據,長度不匹配

  23000 違反完整性約束

  24000* 無效的游標狀態

  25000 無效的事務狀態

  28000 無效的授權規范

  34000 無效的游標名稱

  37000 語法錯誤或違規訪問 --------------------------------在聯機幫助裡

  3C000 重復的游標名稱

  40001 串行錯誤

  42000 語法錯誤或違規訪問

  70100 操作終止

  IM001 驅動程序不支持本函數

  IM002 未找到源名稱並且未指定默認驅動程序

  IM003 無法裝載指定的驅動程序

  IM004 驅動程序的 SQLAllocEnv 失敗

  IM005 驅動程序的 SQLAllocConnect 失敗

  IM006 驅動程序的 SQLSetConnectOption 失敗

  IM007 未指定數據源或驅動程序;禁止對話

  IM008 對話失敗

  IM009 無法裝載轉換 DLL

  IM010 數據源名稱過長

  IM011 驅動程序名稱過長

  IM012 DRIVER 關鍵字語法錯誤

  IM013 跟蹤文件錯誤

  S0001 基表或視圖已存在

  S0002 未找到基表

  S0011 索引已經存在

  S0012 未找到索引

  S0021 列已存在

  S0022 未找到列

  S0023 列無默認值

  S1000 常規錯誤

  S1001 內存分配失敗

  S1002 列編號無效

  S1003 程序類型超出范圍

  S1004 SQL 數據類型超出范圍

  S1008 已取消操作

  S1009 參數值無效

  S1010 函數序列錯誤

  S1011 操作在此時無效

  S1012 所指定的事務操作代碼無效

  S1015 無可用的游標名稱

  S1090 字符串或緩沖區長度無效

  S1091 描述符類型超出范圍

  S1092 選項類型超出范圍

  S1093 參數編號無效

  S1094 小數位數值無效

  S1095 函數類型超出范圍

  S1096 信息類型超出范圍

  S1097 列類型超出范圍

  S1098 作用域類型超出范圍

  S1099 可為空類型超出范圍

  S1100 唯一性選項類型超出范圍

  S1101 准確性選項類型超出范圍

  S1103 方向選項超出范圍

  S1104 精度值無效

  S1105 參數類型無效

  S1106 提取類型超出范圍

  S1107 行值超出范圍

  S1108 並發選項超出范圍

  S1109 游標位置無效

  S1110 驅動程序完成無效

  S1111 書簽值無效

  S1C00 驅動程序無法執行

  S1DE0 執行值掛起時無數據

  S1T00 超時失效

  很詳細的錯誤代碼匯總,希望能對大家有幫助哦

        :更多精彩教程請關注三聯設計教程 欄目,

copyright © 萬盛學電腦網 all rights reserved