我正在嘗試使用 Npgsql2 庫從 PostgreSQL 10.5 數(shù)據(jù)庫中選擇數(shù)據(jù) - 我不能使用 Npgsql3 或 Npgsql4,因?yàn)槲倚枰С?Windows XP(最大 .NET 4.0)。我使用以下代碼:var builder = new NpgsqlConnectionStringBuilder();//setting connection string variables herevar connection = new NpgsqlConnection(builder.Tostring());var query = "SELECT * FROM \"TableName\" ORDER BY \"ColumnName\"";var adapter = new NpgsqlDataAdapter(query, connection);var dataSet = new DataSet();connection.Open();adapter.Fill(dataSet);如果我在查詢中未對 TableName 或 ColumnName 使用雙引號(hào) - 它會(huì)失敗并出現(xiàn)錯(cuò)誤:PostgreSQL 錯(cuò)誤:42P01:關(guān)系“表名”不存在使用雙引號(hào)它可以工作。那么是否可以使用不帶雙引號(hào)的 Npgsql 呢?有沒有什么flag之類的?
1 回答

函數(shù)式編程
TA貢獻(xiàn)1807條經(jīng)驗(yàn) 獲得超9個(gè)贊
如果沒有雙引號(hào),PostgreSQL 會(huì)將所有標(biāo)識(shí)符折疊為小寫。這是 PostgreSQL 的行為,與 Npgsql 無關(guān) - 后者只是在您編寫 SQL 時(shí)傳遞您的 SQL。您可以切換到全小寫的表名,在這種情況下您不再需要引號(hào)。
- 1 回答
- 0 關(guān)注
- 243 瀏覽
添加回答
舉報(bào)
0/150
提交
取消