在 npgsql 中使用 psql 选项
Using psql options in npgsql
我在我工作的图书馆中使用的一个小应用程序中使用 npgsql。最初我的应用程序 (vb.net) 使用 sendkeys.send 和 sendkeys.sendwait 在 cmd 中键入 psql 命令.这 有效 但它缓慢且效率低下(丑陋,有缺陷等)。
我通常使用 psql 中的 \o 和 \H 选项将我的查询结果发送到格式为 HTML 的输出文件,并在我的应用程序中显示它。
我想知道 npgsql 是否可以处理一些可用的 psql 选项...特别是输出文件和输出格式(到 html)。
postgreSQL 文档的 psql 页面:
http://www.postgresql.org/docs/devel/static/app-psql.html
我现在做的怎么样:
SendKeys.Send("SET client_encoding = 'UTF8';" & "{ENTER}")
SendKeys.Send("\o htmlout.html" & "{ENTER}")
SendKeys.Send("\H" & "{ENTER}")
SendKeys.Send("\T bgcolor=""#E4F1E4""" & "{ENTER}")**
SendKeys.Send("SELECT * FROM public." & gdxfilebox.Text.Remove(5))
SendKeys.Send("{ENTER}")
SendKeys.Send("WHERE gid IN {(}" & gidbox.Text.Trim() & "{)};")
SendKeys.SendWait("{ENTER}")
SendKeys.SendWait("\q" & "{ENTER}")
SendKeys.SendWait("exit" & "{ENTER}")
谢谢!
Npgsql 只是一个与数据库交互的驱动程序,HTML 结果格式化完全超出了它的范围(不像 psql,它是一个面向用户的控制台应用程序)。请注意,没有任何 "universal" 方法可以使 HTML 的格式满足所有人。
但是,从数据库中读取查询并将结果格式化为 HTML 应该非常容易,只需使用 NpgsqlDataReader 的 API 从每个结果行中读取列并格式化 HTML 从那里开始。
我在我工作的图书馆中使用的一个小应用程序中使用 npgsql。最初我的应用程序 (vb.net) 使用 sendkeys.send 和 sendkeys.sendwait 在 cmd 中键入 psql 命令.这 有效 但它缓慢且效率低下(丑陋,有缺陷等)。
我通常使用 psql 中的 \o 和 \H 选项将我的查询结果发送到格式为 HTML 的输出文件,并在我的应用程序中显示它。
我想知道 npgsql 是否可以处理一些可用的 psql 选项...特别是输出文件和输出格式(到 html)。
postgreSQL 文档的 psql 页面: http://www.postgresql.org/docs/devel/static/app-psql.html
我现在做的怎么样:
SendKeys.Send("SET client_encoding = 'UTF8';" & "{ENTER}")
SendKeys.Send("\o htmlout.html" & "{ENTER}")
SendKeys.Send("\H" & "{ENTER}")
SendKeys.Send("\T bgcolor=""#E4F1E4""" & "{ENTER}")**
SendKeys.Send("SELECT * FROM public." & gdxfilebox.Text.Remove(5))
SendKeys.Send("{ENTER}")
SendKeys.Send("WHERE gid IN {(}" & gidbox.Text.Trim() & "{)};")
SendKeys.SendWait("{ENTER}")
SendKeys.SendWait("\q" & "{ENTER}")
SendKeys.SendWait("exit" & "{ENTER}")
谢谢!
Npgsql 只是一个与数据库交互的驱动程序,HTML 结果格式化完全超出了它的范围(不像 psql,它是一个面向用户的控制台应用程序)。请注意,没有任何 "universal" 方法可以使 HTML 的格式满足所有人。
但是,从数据库中读取查询并将结果格式化为 HTML 应该非常容易,只需使用 NpgsqlDataReader 的 API 从每个结果行中读取列并格式化 HTML 从那里开始。