Son*_*nül 2 .net c# sql t-sql asp.net
我有一个这样的 SQL 查询:
\n\nSELECT E.HESAP, B.TEKLIF_NO1 + \'/\' + B.TEKLIF_NO2 AS \'TEKLIF\',\n E.MUSTERI,CONVERT(VARCHAR(10),B.ISL_TAR,103) AS \'TARIH\', SUM(\n ISNULL(CAST(B.ODENEN_ANAPARA AS FLOAT),0)+ISNULL(CAST(B.FAIZ AS FLOAT),0)+\n ISNULL(CAST(B.BSMV AS FLOAT),0)+ISNULL(CAST(B.GECIKME_FAIZ AS FLOAT),0)+\n ISNULL(CAST(B.GECIKME_BSMV AS FLOAT),0)) AS \'YATAN\', \n (CASE WHEN C.DOVIZ_KOD = 21 THEN \'EUR\' WHEN C.DOVIZ_KOD = 2 THEN \'USD\' WHEN C.DOVIZ_KOD = 1 THEN \'TL\' END) AS \'KUR\',\n E.AVUKAT, CONVERT(VARCHAR(10),A.ICRA_TAR,103) AS \'\xc4\xb0CRA TAR\xc4\xb0H\xc4\xb0\', CONVERT(VARCHAR(10),A.HACIZ_TAR,103) AS \'HAC\xc4\xb0Z TAR\xc4\xb0H\xc4\xb0\'\n FROM TAKIP A, YAZ..MARDATA.BIR_TAHSIL B, \n YAZ..MARDATA.S_TEKLIF C,P_TAKIP_SR D, AVUKAT E\n WHERE B.TEKLIF_NO1 = C.TEKLIF_NO1\n AND B.TEKLIF_NO2 = C.TEKLIF_NO2\n AND A.T_HESAP_NO = C.HESAP_NO\n AND C.HESAP_NO = B.HESAP_NO\n AND B.HESAP_NO = E.HESAP\n AND A.T_SRM = D.T_SR_ID\n AND A.T_STATU = 2\n AND A.T_SRM <> 6\nRun Code Online (Sandbox Code Playgroud)\n\n但是当我运行它时,我收到一个错误:
\n\n\n\n\n\'/\' 应用程序中的服务器错误。
\n\n
\n 无法解决等于操作中“Turkish_CI_AS”和\n“SQL_Latin1_General_CP1_CI_AS”之间的排序规则冲突。
\n 描述: 在执行当前 Web 请求期间\n 发生未处理的异常。
\n 请查看堆栈跟踪以获取有关错误及其在代码中的\n 位置的详细信息。异常详细信息: System.Data.SqlClient.SqlException:\n 无法解决\n 等于操作中“Turkish_CI_AS”和\n“SQL_Latin1_General_CP1_CI_AS”之间的排序规则冲突。
\n\n源错误:\n 第 77 行:myConnection.Open();\n 第 78 行:\n 第 79 行:SqlDataReader dr = myCommand.ExecuteReader(System.Data.CommandBehavior.CloseConnection);\n 第 80 行:\n 第 81 行: // 显示数据
\n
我找不到错误。它在哪里?
\n查看其中一个 AND 子句,其中数据类型为 VARCHAR 类型。您需要在 where 两侧指定排序规则,以确保不会出现此错误。
例如:
WHERE B.TEKLIF_NO1 COLLATE SQL_Latin1_General_CP1_CI_AS = C.TEKLIF_NO1 COLLATE SQL_Latin1_General_CP1_CI_AS
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21115 次 |
| 最近记录: |