可以将参数与NPGSQLDATAADAPTER一起使用,就像我可以使用NPGSQLCommand: string sql = "SELECT * FROM tbl_student WHERE name = @val"; NpgsqlCommand command = new NpgsqlCommand(sql, conn); command.Parameters.AddWithValue("@val", name); 我有此代码,它显示有关学生的信息I gridView: string sql = "SELECT * FROM tbl_student WHERE studentname = '" + name + "'"; DataSet ds = new DataSet(); DataTable dt = n
以下是关于 npgsql 的编程技术问答
我在Outlooks公共文件夹中有大约200000封电子邮件. 导出到PST有点快,但我不知道PST是否可靠.还可以完美地解码它(带有附件)也很头疼. Python Lib不能保存附件. Java lib并未为所有电子邮件进口HTML主体. 所以,我想到保存到PostgreSQL DB. 我正在使用npgsql,但它很慢(以我使用的方式). 我目前的慢速方式: sql = "insert into tablename (a,b,c) values (:aa, :bb, :cc)"; cmd = (sql, con) #I am skipping full commands as I am reading from mind, dont think I made mistake in my code. NpgsqlParameter pa = new NpgsqlParameter(":aa", sometype) #same for other 3
我如何在C#类模型中定义PostGIS"地理"类型,以便Ormlite可以轻松地将其传递给PostgreSQL,以便除了将空间数据保存到"地理"列中,我还可以运行空间查询? 解决方案 最好的库是您可以这样使用; protected GisSharpBlog.NetTopologySuite.Geometries.Geometry _geom; public GisSharpBlog.NetTopologySuite.Geometries.Geometry Geom { get { return _geom; } set { _geom = value; } } protected string _geomwkt; public virtual string GeomWKT { get { if (this.Geom != null) return this.Geo
我正在使用一个数据库 - 项目引用EntityFrameWorkCore 2.1.3软件包,但是ASPNETCORE.App-MetaCkage包含EntityFrameWorkCore 2.1.2.引入我的数据库项目后,我得到了此MSBUILD-PRONNNING: Warning MSB3277 Found conflicts between different versions of "Microsoft.EntityFrameworkCore" that could not be resolved. 我已经搜索了一个我找到了这个文档的谷歌搜索: https://learn.microsoft.com/en-us/aspnet/core/core/fundamentals/metapackage-app?view= aspnetcore-2.1 我使用的是依赖于2.1.3 ... 我应该降级所有软件包,以便它们使用EFCORE 2.1.2软件包,还是应该忽略此警告?
我在.NET Framework 4.5.1上有一个Web项目.我们正在尝试增加对该项目的后Ql支持.使用Nuget,我已在项目中安装了4.0.4 NPGSQL.在参考文献下,我看到以下添加到项目中. NPGSQL -4.0.4.0-运行时版V4.0.30319 system.threading.tasks.extensions -4.2.0.0-运行时版V4.0.30319 我尝试运行项目并连接并从数据库中获取数据时,我会收到以下错误,说filenotfoundexception: System.TypeInitializationException HResult=0x80131534 Message=The type initializer for 'com.rsol.RConfig' threw an exception. Source=RConfig StackTrace: at com.
当使用NPGSQL库对PostgreSQL使用NPGSQL库时,我找不到将光标参考作为参数的任何方法.这可能吗? using (DbConnection connection = new NpgsqlConnection(connectionString)) { connection.Open(); using (DbTransaction transaction = connection.BeginTransaction()) { var outCursor = new NpgsqlParameter("cursor", NpgsqlTypes.NpgsqlDbType.Refcursor); outCursor.Direction = ParameterDirection.Output; // get a refcursor from somewhere using (DbCommand
如果我用NPGSQLCopSerializer正确理解NPGSQLCOPYIN,则应使用这样的工作: var conn = new NpgsqlConnection(ConfigurationManager.ConnectionStrings["PostgreSqlDb"].ConnectionString); conn.Open(); var tran = conn.BeginTransaction(); var cmd = new NpgsqlCommand("COPY address (id, employee, value) FROM STDIN", conn); var npgsqlCopySerializer = new NpgsqlCopySerializer(conn); var npgsqlCopyIn = new NpgsqlCopyIn(cmd, conn, npgsqlCopySerializer.ToStream); try { npgsqlCo
我有这个postgres/postgis查询: UPDATE raw.geocoding SET the_geom = ST_Transform(ST_GeomFromText('POINT(((E'-96.6864379495382')::float8) ((E'32.792527154088')::float8))', 4326),3081) WHERE id=((10793455)::int4) 当我运行它时,我会收到此错误: ERROR: syntax error at or near "')::float8) ((E'" LINE 2: ...sform(ST_GeomFromText('POINT(((E'-96.6864379495382')::float8... ^ ********** Error ********** ERRO
我能够使用NPGSQL Nuget软件包成功连接,直到有一天该程序开始在执行Conn.Open()的情况下悬挂数小时而无需返回. 我可以通过相同的参数成功地与Aginity客户端连接. 我尝试了防火墙打开和关闭. 我尝试了防病毒打开和关闭. 我尝试了提琴手打开和关闭. 需要注意的一些事情: 我需要使用 VPN 才能连接到该主机.当执行Conn.Open()时,它只是悬挂数小时. 当我不使用VPN时,它会立即出现. 我们看不到与主机的实际传入连接,只是查询.但是代码无法到达查询部分,它挂在打开连接上. using (var conn = new NpgsqlConnection(connString)) { conn.Open(); using (var cmd = new NpgsqlCommand(command, conn
说我有一张名为" extepletable"的表,在PostgreSQL中,带有100个citext键入字段,我们称其为" field1"," field2"等...如何使用NPGSQL读取这些字段?理想情况下,我想使用以下SQL: select * from exampletable 但是,当我使用NPGSQL 3.0.0执行SQL时,我会得到以下NotSupportedException: " field field1具有NPGSQL当前未知的类型(OID 16466).您可以通过将其标记为未知来将其作为字符串检索,请参阅FAQ ..." 要克服这一点,我可以手动将所有字段施放到SQL查询中的文本: select field1::text, field2::text, ... field99::text, field100::text from exampletable 您可以看到这是非常详细且笨拙的.我是否必须手动施放所有字段才能在我的查询中发短信,或者
我正在将实体框架与PostgreSQL一起使用,这意味着我将NPGSQL用作数据提供商.我想致电context.Database.ExecuteSqlCommandAsync进行查询,并且我正在尝试使用参数以避免注射攻击.我想进行的查询的一个示例是Alter Table Add列.这是我的代码设置参数和SQL查询的样子: NpgsqlParameter tableNameParam = new NpgsqlParameter("tableName", NpgsqlDbType.Text); tableNameParam.Value = entityTableName; NpgsqlParameter fieldNameParam = new NpgsqlParameter("fieldName", NpgsqlDbType.Text); fieldNameParam.Value = sqlFieldName; NpgsqlParameter fieldTypeParam = new
是否有文档作为如何在ASP.NET 5中安装支持EF6的NPGSQL? 还是一个例子? 解决方案 此博客文章与ASP.NET 5一起使用EF6. " rel =" nofollow"> http://blog.tonysneed.com/2016/01/22/ef6-asp-net-core-mvc6/从理论上讲,您只需要使用 https://www.nuget.org/packages/npgsql.entityframework/npgsql.entityframework/. 使用小心Howerver:EF6不支持.NET CORE,只有完整的.NET框架. EF Core是EF的新版本,旨在支持.NET Core上的ASP.NET Core. NPGSQL对EF Core有支持,可以在此处提供: doc/ef7.html (我假设在某个时候,此软件包将从ef7.npgsql重命名为efcore.npgsql ...参见
表格创建表由代码创建的问题是使用NPGSQL 数据库创建应从版本2.2.0-Beta1: «DavidKarlaš在EF6+中增加了对EFMIGRATION和DATABASE创建的支持 现在可以启动代码第一个项目,而无需预先创建数据库. EntityFramework和NPGSQL将负责. Emil Lenngren增加了对EntityFramework的许多缺失功能的支持.» beta1 但是,当我尝试这样做时,我遇到了问题. 首先,我做了一个简单的项目,该项目与SQLServer合作: 我创建了ASP.NET MVC项目(VS2013),并添加一些代码: public class Movie { public int ID { get; set; } public string Title { get; set; } } public class MovieDBContext : DbContext { public DbSet
我尝试在Ubuntu上配置一个项目,以使用NPGSQL提供商使用EntityFramework,然后遵循但是,建议的配置文件(或我缺少某些内容)似乎有些问题,因为我无法摆脱此错误: 实体框架提供商类型'npgsql.npgsqlservices,npgsql.entityframeworklegacy,版本= 2.1.0.0,文化=中性,publicKeyToken = 5d8b90d52f46f46f46f46f46fda7'在应用程序中注册的aDo.net provider'n n n n n n n name不加载.确保使用组装合格的名称,并且该组件可用于运行应用程序.请参阅 http://go.microsoft.com/fwlink/?linkid=260882 for更多信息. 有人使用Monodevelop中的实体框架连接到PostgreSQL的应用程序的简单工作示例? 解决方案 请尝试使用NPGSQL 3.0.3(错误说2.1.0),正确的软件包将是E
我正在尝试为PostgreSQL-9.6中的枚举类型添加一个值,并且在找出我在做错了什么时遇到了麻烦. var tc = new NpgsqlCommand(@"ALTER TYPE attributeName ADD VALUE IF NOT EXISTS :a", conn); //tc.Parameters.Add(new NpgsqlParameter("a", NpgsqlDbType.Text)); //tc.Parameters[0].Value = "test"; tc.Parameters.AddWithValue("a", NpgsqlDbType.Text, "test"); tc.ExecuteNonQuery(); 我尝试了评论的代码和当前版本,并且都导致了例外.例外细节是: $exception {"42601: syntax error at or near \"$1\""} 我了解$ 1是指通过" A"参数传递的文本,但我不明白
我正在使用NPGSQL查询数据库表,并在我的页面/视图上显示结果. 代码在没有where子句和参数的情况下可以正常工作,因为它将所有行从表进入视图.现在,我正在尝试使搜索字符串变量不兼容(如果用户在字符串中键入,则给我包含此字符串的表记录).我的代码如下 string searchValue = TempData["String"].ToString(); var model = new List(); NpgsqlConnection connection = new NpgsqlConnection ("Host=192.168.0.52;Database=test;Username=test;Password=test"); connection.Open(); NpgsqlCommand cmd = new NpgsqlCommand ("SELECT * FROM q_product WHERE q_
我正在使用C#和PostgreSQL.我已经使用NPGSQL连接到PostgreSQL.一切正常.现在,我想在PGBOUNCER工具的帮助下使用连接池.数据库信息已将其设置为PGBOUNCER.因为现在PGBOUNCER可以处理与PostgreSQL数据库的连接(如果我错了,请纠正我). 但问题是,我找不到在C#中连接PGBOUNCER的方法.如果有人做过同样的事情,请告诉我. 在PostgreSQL中使用连接池而不是PGBOUNCER,这也很好吗?如果是,请告诉我如何做. 谢谢 解决方案 将PGBOUNCER与NPGSQL一起使用,只是意味着将NPGSQL连接到PGBOUNCER而不是直接的PostgreSQL - 您需要做的就是提供商PGBOUNCER的主机和端口. > 请注意,NPGSQL带有一个高效的内置连接池,通常应该优选,确保您有一个充分的理由使用PGBOUNCER而不是内部池. NPGSQL池默认打开,如果要使用PGBOUNCER,则应该通
我在使用NPGSQL通过DataGridView更新数据时遇到了问题.我希望从DataGridView动态更新我的表格. 这是我要更新的代码: NpAdapter.UpdateCommand = new NpgsqlCommand("update sessions set \"Visit Number:\" = :visit_num, \"ID:\" = :id, \"ENTERED BY:\" = :entered " + "where \"Visit Number:\" = :visit_num_old, \"ID:\" = :id_old, \"ENTERED BY:\" = :entered_old", this.dataconnect); NpAdapter.UpdateCommand.Parameters.Add(new NpgsqlParameter("visit_num", DbType.Int32, 10) { Direction = ParameterD
是否有一种方法可以使用NPGSQL进行批量操作,例如ODP.NET阵列绑定功能? 我知道单个命令中的批处理/管道/多个SQL语句(在单个往返中执行),但据我了解,您不能以相同的方式使用它,每个语句都有不同的参数.如果可以这样做,如果有人可以提供一个示例如何将下面的代码转换为NPGSQL,我会很高兴. List listDTO; // list containing up to 1000 dtos OraCommand = db.GetOracleCommand(); OraCommand.CommandText = "INSERT INTO TABLE (ID, FIELD1, FIELD2) VALUES (:ID, :FIELD1, :FIELD2)"; object[] FIELD1 = new object[listDTO.Count]; object[] FIELD2 = new object[listDTO.Count]; for (int i = 0;