我有点困惑,我正在阅读以下http://en.wikipedia.org/wiki/Java_Database_Connectivity
Connection conn = DriverManager.getConnection(
"jdbc:somejdbcvendor:other data needed by some jdbc vendor",
"myLogin",
"myPassword" );
Statement stmt = conn.createStatement();
try {
stmt.executeUpdate( "INSERT INTO MyTable( name ) VALUES ( 'my name' ) " );
} finally {
//It's important to close the statement when you are done with it
stmt.close();
}
Run Code Online (Sandbox Code Playgroud)
你不需要关闭连接吗?如果没有发生conn.close(),会发生什么?
我有一个私人网络应用程序,我正在维护,目前没有关闭任何一种形式,但重要的是真正的stmt one,conn one或者两者兼而有之?
该网站间歇性地停止,但服务器一直说这是一个数据库连接问题,我怀疑它没有关闭,但我不知道哪个关闭.
PostgreSQL中是否有命令选择到给定数据库的活动连接?
psql 说我不能删除我的一个数据库,因为它有活动的连接,所以我想看看连接是什么(以及从哪些机器)
我只是想知道数据库连接池的概念及其实现方式.
当尝试通过ASP.NET在线连接到MSSQL数据库时,当两个或更多人同时连接时,我将得到以下信息:
ExecuteReader需要一个开放且可用的连接.连接的当前状态为"正在连接".
该站点在我的localhost服务器上正常工作.
这是粗略的代码.
public Promotion retrievePromotion()
{
int promotionID = 0;
string promotionTitle = "";
string promotionUrl = "";
Promotion promotion = null;
SqlOpenConnection();
SqlCommand sql = SqlCommandConnection();
sql.CommandText = "SELECT TOP 1 PromotionID, PromotionTitle, PromotionURL FROM Promotion";
SqlDataReader dr = sql.ExecuteReader();
while (dr.Read())
{
promotionID = DB2int(dr["PromotionID"]);
promotionTitle = DB2string(dr["PromotionTitle"]);
promotionUrl = DB2string(dr["PromotionURL"]);
promotion = new Promotion(promotionID, promotionTitle, promotionUrl);
}
dr.Dispose();
sql.Dispose();
CloseConnection();
return promotion;
}
Run Code Online (Sandbox Code Playgroud)
我可能知道可能出了什么问题,我该如何解决?
编辑:不要忘记,我的连接字符串和连接都是静态的.我相信这就是原因.请指教.
public static string conString = ConfigurationManager.ConnectionStrings["dbConnection"].ConnectionString;
public static SqlConnection conn …Run Code Online (Sandbox Code Playgroud) 当我尝试从本地环境连接生产数据库时,我收到以下错误.
之前我能够连接Production DB,但突然间我得到了跟随错误,有什么想法吗?
已成功与服务器建立连接,但在登录前握手期间发生错误.(提供者:TCP提供者,错误:0 - 句柄无效.)
我试图在本地PC上运行asp.net网站,它有生产数据库的连接字符串,以下是我在本地环境中获取的错误的堆栈跟踪.
在MyWebsiteDAL.clsForumQuestion.SelectAll(Int32 CurrentPageIndex,Int32 PageSize)的D:\ EDrive\My WebSites\MyWebsite\MyWebsite\MyWebsiteDAL\clsForumQuestion.cs:第8行,位于D的CodeConnect.Default.Page_Load(Object sender,EventArgs e):\EDrive\My WebSites\MyWebsite\MyWebsite\MyWebsite\Default.aspx.cs:System.Web.Util的System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp,Object o,Object t,EventArgs e)第100行. System.Web.UI.Page.ProcessRequestMain上的System.Web.UI.Control.LoadRecursive()处的System.Web.UI.Control.OnLoad(EventArgs e)上的CalliEventHandlerDelegateProxy.Callback(Object sender,EventArgs e)(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
知道这里可能出了什么问题吗?
为什么我在Hibernate中需要Transaction才能进行只读操作?
以下事务是否锁定了数据库?
从DB获取的示例代码:
Transaction tx = HibernateUtil.getCurrentSession().beginTransaction(); // why begin transaction?
//readonly operation here
tx.commit() // why tx.commit? I don't want to write anything
Run Code Online (Sandbox Code Playgroud)
我可以用session.close() 而不是tx.commit()吗?
我用这个命令安装了Postgres
sudo apt-get install postgresql postgresql-client postgresql-contrib libpq-dev
Run Code Online (Sandbox Code Playgroud)
psql --version在终端上使用我得到psql (PostgreSQL) 9.3.4
然后我安装pgadmin了
sudo apt-get install pgadmin3
Run Code Online (Sandbox Code Playgroud)
后来我打开了UI并使用这些信息创建了服务器

但是出现了这个错误

我该怎么解决?
如何使用例如MySQL Query Browser在heroku上执行远程连接到ClearDB MySQL数据库.在哪里获取网址,端口,登录名和密码?
如何将连接字符串传递给实体框架的代码优先DbContext?当DbContext和web.config中的连接字符串位于同一个项目中并以相同的方式命名时,我的数据库生成正常工作.但是现在我需要将DbContext移动到另一个项目,所以我正在测试将连接字符串传递给它,如下所示:
模型与语境
public class Dinner
{
public int DinnerId { get; set; }
public string Title { get; set; }
}
public class NerdDinners : DbContext
{
public NerdDinners(string connString)
: base(connString)
{
}
public DbSet<Dinner> Dinners { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
行动
public ActionResult Index()
{
var db = new NerdDinners(ConfigurationManager.ConnectionStrings["NerdDinnerDb"].ConnectionString);
var dinners = (from d in db.Dinners
select d).ToList();
return View(dinners);
}
Run Code Online (Sandbox Code Playgroud)
Web.Config中
<connectionStrings>
<add name="NerdDinnerDb" connectionString="Data Source=|DataDirectory|NerdDinners.sdf" providerName="System.Data.SqlServerCe.4.0"/>
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)
如果我在操作中设置断点,则分析db,连接字符串就在那里,但它不会创建或查找数据库或任何东西.
建立与SQL Server的连接时发生与网络相关或特定于实例的错误.服务器未找到或无法访问.验证实例名称是否正确,以及SQL Server是否配置为允许远程连接.(提供者:命名管道提供程序,错误:40 - 无法打开与SQL …
我见过的每个SQL Server连接字符串都是这样的:
Data Source=MyLocalSqlServerInstance;Initial Catalog=My Nifty Database;
Integrated Security=SSPI;
Run Code Online (Sandbox Code Playgroud)
我是否需要初始目录设置?(显然不是,因为我正在处理的应用似乎没有它.)
那么,那是什么呢?
database sql-server connection-string database-connection sql-server-2005
database ×4
java ×3
sql-server ×3
.net ×2
ado.net ×2
c# ×2
postgresql ×2
heroku ×1
hibernate ×1
listings ×1
mysql ×1
pgadmin ×1
sql ×1
transactions ×1