
本机postgresql服务的话,双击要连接的服务,输入密码。
点击OK,就链接上了。
如果是远程服务器。就在上一节点的server上右键=》create=》server,在d出的界面选择:
connection
然后输入远程服务器的地址,端口,用户名,密码。
看名字就是databasehelper,数据库助手的意思么,这本身就是一个类。
包含了数据库连接,关闭,如果有拓展的话 可能包含基本的数据库JDBC *** 作方法也就是简化增删改查的一些方法。然后,就没有然后了。。。
如果需要的话 百度搜索下就有了,很多改良版本看需求吧。
一般说来 NET里面才叫DBHelper,JAVA里面叫做BaseDao
sql的
using System;
using SystemCollectionsGeneric;
using SystemText;
using SystemDataSqlClient;
using SystemData;
using SystemConfiguration;
namespace DAL
{
public class SqlHelper
{
public static string cons = ConfigurationManagerConnectionStrings["AliCon"]ConnectionString;
/// <summary>
/// one
/// </summary>
/// <param name="sqlcmd">sql</param>
/// <returns>object</returns>
public static object ExeOnlyOne(string sqlcmd)
{
object oRs = null;
using(SqlConnection con = new SqlConnection())
{
conConnectionString = cons;
SqlCommand cmd = new SqlCommand(sqlcmd, con);
conOpen();
oRs = cmdExecuteScalar();
conClose();
}
return oRs;
}
public static object ExeOnlyOne(string sqlcmd,params SqlParameter[] pars)
{
object oRs = null;
using (SqlConnection con = new SqlConnection())
{
conConnectionString = cons;
SqlCommand cmd = new SqlCommand(sqlcmd, con);
cmdParametersAddRange(pars);
conOpen();
oRs = cmdExecuteScalar();
conClose();
}
return oRs;
}
/// <summary>
/// insert update delete
/// </summary>
/// <param name="sqlcmd">sql</param>
/// <returns>int</returns>
public static int ExeCUD(string sqlcmd)
{
int iRs = -1;
using (SqlConnection con = new SqlConnection())
{
conConnectionString = cons;
SqlCommand cmd = new SqlCommand(sqlcmd, con);
conOpen();
iRs = cmdExecuteNonQuery();
conClose();
}
return iRs;
}
public static int ExeCUD(string sqlcmd,params SqlParameter[] pars)
{
int iRs = -1;
using (SqlConnection con = new SqlConnection())
{
conConnectionString = cons;
SqlCommand cmd = new SqlCommand(sqlcmd, con);
cmdParametersAddRange(pars);
conOpen();
iRs = cmdExecuteNonQuery();
conClose();
}
return iRs;
}
/// <summary>
/// all
/// </summary>
/// <param name="sqlcmd">sql</param>
/// <returns>DataTable</returns>
public static DataTable ExeAll(string sqlcmd)
{
DataTable dt = null;
using (SqlConnection con = new SqlConnection())
{
conConnectionString = cons;
SqlDataAdapter sda = new SqlDataAdapter(sqlcmd,con);
DataSet ds = new DataSet();
sdaFill(ds);
dt = dsTables[0];
}
return dt;
}
public static DataTable ExeAll(string sqlcmd,params SqlParameter[] pars)
{
DataTable dt = null;
using (SqlConnection con = new SqlConnection())
{
conConnectionString = cons;
SqlDataAdapter sda = new SqlDataAdapter(sqlcmd, con);
sdaSelectCommandParametersAddRange(pars);
DataSet ds = new DataSet();
sdaFill(ds);
dt = dsTables[0];
}
return dt;
}
/// <summary>
/// all
/// </summary>
/// <param name="sqlcmd">sql</param>
/// <returns>SqlDataReader</returns>
public static SqlDataReader ExeReader(string sqlcmd)
{
SqlConnection con = new SqlConnection();
conConnectionString = cons;
SqlCommand cmd = new SqlCommand(sqlcmd, con);
conOpen();
SqlDataReader sdr = cmdExecuteReader(CommandBehaviorCloseConnection);
return sdr;
}
public static SqlDataReader ExeReader(string sqlcmd,params SqlParameter[] pars)
{
SqlConnection con = new SqlConnection();
conConnectionString = cons;
SqlCommand cmd = new SqlCommand(sqlcmd, con);
cmdParametersAddRange(pars);
conOpen();
SqlDataReader sdr = cmdExecuteReader(CommandBehaviorCloseConnection);
return sdr;
}
}
}
access的
using System;
using SystemData;
using SystemDataOleDb;
using SystemConfiguration;
namespace DAL
{
/// <summary>
/// OLEDBHelper 的摘要说明
/// </summary>
public class OLEDBHelper
{
/// <summary>
/// 连接数据库字符串
/// </summary>
public static string strCon = ConfigurationManagerConnectionStrings["DemoCon"]ConnectionString;
/// <summary>
/// 执行得到一行一列
/// </summary>
/// <param name="sqlText">sql语句</param>
/// <returns>object对象</returns>
public static object ExeOnlyOne(string sqlText)
{
object oRs = null;
using (OleDbConnection con = new OleDbConnection())
{
conConnectionString = strCon;
OleDbCommand cmd = new OleDbCommand();
cmdCommandText = sqlText;
cmdConnection = con;
conOpen();
oRs = cmdExecuteScalar();
conClose();
}
return oRs;
}
/// <summary>
/// 重载ExecuteOnlyOne
/// </summary>
/// <param name="sqlText">命令</param>
/// <param name="pars">参数个数不定</param>
/// <returns></returns>
public static object ExeOnlyOne(string sqlText, params OleDbParameter[] pars)
{
object oRs = null;
using (OleDbConnection con = new OleDbConnection())
{
conConnectionString = strCon;
OleDbCommand cmd = new OleDbCommand();
cmdCommandText = sqlText;
cmdConnection = con;
cmdParametersAddRange(pars);
conOpen();
oRs = cmdExecuteScalar();
conClose();
}
return oRs;
}
/// <summary>
/// 执行Insert update delete语句
/// </summary>
/// <param name="sqlText">sql语句</param>
/// <returns>受影响行数</returns>
public static int ExeCUD(string sqlText)
{
int iRs = 0;
using (OleDbConnection con = new OleDbConnection())
{
conConnectionString = strCon;
OleDbCommand cmd = new OleDbCommand();
cmdCommandText = sqlText;
cmdConnection = con;
conOpen();
iRs = cmdExecuteNonQuery();
conClose();
}
return iRs;
}
/// <summary>
/// 执行带参数的Insert update delete语句
/// </summary>
/// <param name="sqlText">sql语句</param>
/// <param name="pars">参数</param>
/// <returns>受影响行数</returns>
public static int ExeCUD(string sqlText, params OleDbParameter[] pars)
{
int iRs = 0;
using (OleDbConnection con = new OleDbConnection())
{
conConnectionString = strCon;
OleDbCommand cmd = new OleDbCommand();
cmdCommandText = sqlText;
cmdConnection = con;
cmdParametersAddRange(pars);
conOpen();
iRs = cmdExecuteNonQuery();
conClose();
}
return iRs;
}
/// <summary>
/// 查询多条结果
/// </summary>
/// <param name="sqlText">sql语句</param>
/// <returns>DataTable</returns>
public static DataTable ExeAll(string sqlText)
{
DataTable dtRs = null;
using (OleDbConnection con = new OleDbConnection())
{
conConnectionString = strCon;
OleDbDataAdapter sda = new OleDbDataAdapter();
sdaSelectCommand = new OleDbCommand(sqlText, con);
DataSet ds = new DataSet();
sdaFill(ds);
dtRs = dsTables[0];
}
return dtRs;
}
/// <summary>
/// 查询带参的多条结果
/// </summary>
/// <param name="sqlText">sql语句</param>
/// <param name="pars">参数</param>
/// <returns>DataTable</returns>
public static DataTable ExeAll(string sqlText, params OleDbParameter[] pars)
{
DataTable dtRs = null;
using (OleDbConnection con = new OleDbConnection())
{
conConnectionString = strCon;
OleDbDataAdapter sda = new OleDbDataAdapter();
sdaSelectCommand = new OleDbCommand(sqlText, con);
sdaSelectCommandParametersAddRange(pars);
DataSet ds = new DataSet();
sdaFill(ds);
dtRs = dsTables[0];
}
return dtRs;
}
/// <summary>
/// 游标读取数据SqlDataReader
/// </summary>
/// <param name="sqlText">语句</param>
/// <returns>OleDbDataReader</returns>
public static OleDbDataReader ExeReader(string sqlText)
{
OleDbDataReader sdrRs = null;
OleDbConnection con = new OleDbConnection();
conConnectionString = strCon;
OleDbCommand cmd = new OleDbCommand();
cmdConnection = con;
cmdCommandText = sqlText;
conOpen();
sdrRs = cmdExecuteReader(CommandBehaviorCloseConnection);
return sdrRs;
}
/// <summary>
/// 带参reader的sql语句执行
/// </summary>
/// <param name="sqlText">语句</param>
/// <param name="pars">参数</param>
/// <returns>OleDbDataReader</returns>
public static OleDbDataReader ExeReader(string sqlText, params OleDbParameter[] pars)
{
OleDbDataReader sdrRs = null;
OleDbConnection con = new OleDbConnection();
conConnectionString = strCon;
OleDbCommand cmd = new OleDbCommand();
cmdConnection = con;
cmdCommandText = sqlText;
cmdParametersAddRange(pars);
conOpen();
sdrRs = cmdExecuteReader(CommandBehaviorCloseConnection);
return sdrRs;
}
}
}
这里用ContentProvider方法来定义数据库。。
public class AlarmProvider extends ContentProvider //
{
private static final String DB_NAME = "Alarmdb"; //数据库名
private static final int DB_VERSION = 1;//版本号,当程序第一次运行时,数据库被建立,如果
//你更改了数据库,如增加一个表,这时,这个值一般要改一下,这样程序再次安装运行
//时,数据库可自行升级。。如果不改通常要手动删除数据库。。
private static final String ALARM_TABLE_NAME = "alarm"; //一个表名
private static final int ALARM = 1; //与表对应的整数值,相当于id
private static UriMatcher mUriMathcer; //Uri匹配器,建立uri,表名,id三者之间的关系,如下:
static{
mUriMathcer = new UriMatcher(UriMatcherNO_MATCH);
mUriMathceraddURI(AlarmInfoAUTH, "alarm", ALARM);
}
private interface CreateTableInterface //表创建接口
{
public abstract void createAlarmTable(SQLiteDatabase db);
}
//内部类,数据库助手类,并实现表创建接口
private static class DatabaseHelper extends SQLiteOpenHelper implements CreateTableInterface
{
CreateTableInterface mCreateTableInterface = this;
Context mContext = null;
//构造函数,该函数调用后,数据库没有
//创建。。也就是下面的onCreate不会在它调用后就立即调用创建db
public DatabaseHelper(Context context)
{
super(context, DB_NAME, null, DB_VERSION);
// Logi(TAG, "DatabaseHelper be called!");
mContext = context;
}
@Override
public void onCreate(SQLiteDatabase db) //这个方法只在第一次db连接创建db时调用,只一次
{
//create db table
mCreateTableInterfacecreateAlarmTable(db);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) //db升级时调用
{
// Logi(TAG, "onUpgrade() be called!");
dbexecSQL("DROP TABLE IF EXISTS "+ALARM_TABLE_NAME);
onCreate(db);
}
@Override
public void createAlarmTable(SQLiteDatabase db)
{
// 创建表
dbexecSQL("CREATE TABLE "+ALARM_TABLE_NAME+" ("
+AlarmInfo_ID+" INTEGER PRIMARY KEY,"
+AlarmInfo_LABEL+" TEXT NOT NULL,"
+AlarmInfo_TIME+" TEXT NOT NULL,"
+AlarmInfo_ALERT+" TEXT NOT NULL,"
+AlarmInfo_REPEAT+" TEXT NOT NULL,"
+AlarmInfo_ACTIVE+" TEXT NOT NULL"
+");");
//在表中插入一些数据。。。
dbexecSQL("INSERT INTO "+ALARM_TABLE_NAME+"("+AlarmInfo_LABEL+","
+AlarmInfo_TIME+","+AlarmInfo_ALERT+","
+AlarmInfo_REPEAT+","+AlarmInfo_ACTIVE+
") VALUES('Lunch Alarm','11 : 45 AM','"+TagTONE+"','"+TagEVERY_DAY+"','false');");
dbexecSQL("INSERT INTO "+ALARM_TABLE_NAME+"("+AlarmInfo_LABEL+","
+AlarmInfo_TIME+","+AlarmInfo_ALERT+","
+AlarmInfo_REPEAT+","+AlarmInfo_ACTIVE
+") VALUES('Work Alarm','08 : 45 AM','"+TagTONE+"',"+"'Mon,Tue,Wed,Thu,Fri'"
+",'false');");
dbexecSQL("INSERT INTO "+ALARM_TABLE_NAME+"("+AlarmInfo_LABEL+","
+AlarmInfo_TIME+","+AlarmInfo_ALERT+","+AlarmInfo_REPEAT+","
+AlarmInfo_ACTIVE
+") VALUES('Work Alarm','09 : 00 AM','"+TagTONE+"',"
+"'"+TagWEEKENDS+"','false');");
dbexecSQL("INSERT INTO "+ALARM_TABLE_NAME+"("+AlarmInfo_LABEL+","
+AlarmInfo_TIME+","+AlarmInfo_ALERT+","+AlarmInfo_REPEAT+","
+AlarmInfo_ACTIVE
+") VALUES('Yoga','10 : 15 PM','"+TagTONE+"',"+"'Sun,Wed','false');");
}
}
}
private DatabaseHelper mDatabaseHelper; //定义helper
//以下重写insert,delete,update,query等方法
@Override
public synchronized int delete(Uri uri, String selection, String[] selectionArgs)
{
SQLiteDatabase db = null;
boolean success = false;
int count = 0;
try{
db = mDatabaseHelpergetWritableDatabase();
dbacquireReference();
success = true;
switch(mUriMathcermatch(uri)){
case ALARM:
count = dbdelete(ALARM_TABLE_NAME, selection, selectionArgs);
break;
}
}catch(SQLException e){
eprintStackTrace();
}finally{
if(success == true){
dbreleaseReference();
}
}
return count;
}
@Override
public String getType(Uri uri)
{
switch(mUriMathcermatch(uri)){
case ALARM:
return AlarmInfoCONTENT_TYPE;
default:
throw new IllegalArgumentException("Unknown URI " + uri);
}
}
@Override
public synchronized Uri insert(Uri uri, ContentValues initValues)
{
SQLiteDatabase mSQLiteDatabase = null;
boolean success = false;
try{
mSQLiteDatabase = mDatabaseHelpergetWritableDatabase();
mSQLiteDatabaseacquireReference();
success = true;
long mRowId;
ContentValues values;
if(initValues == null){
values = new ContentValues();
}else{
values = initValues;
}
switch(mUriMathcermatch(uri)){
case ALARM:
mRowId = mSQLiteDatabaseinsert(ALARM_TABLE_NAME,
AlarmInfo_ID, values);
if(mRowId > 0){
return uri;
}else{
throw new SQLException("Failed to insert to "+uri);
}
}
}catch(SQLException e){
eprintStackTrace();
}finally{
if(success == true)
mSQLiteDatabasereleaseReference();
}
return null;
}
@Override
public boolean onCreate()
{
// Logi("alarm provider", "onCreate()");
mDatabaseHelper = new DatabaseHelper(getContext());
return true;
}
@Override
public synchronized Cursor query(Uri uri, String[] projection, String selection,
String[] selectionArgs, String sortOrder)
{
SQLiteQueryBuilder mSQLiteQueryBuilder = new SQLiteQueryBuilder();
switch(mUriMathcermatch(uri)){
case ALARM:
mSQLiteQueryBuildersetTables(ALARM_TABLE_NAME);
break;
}
SQLiteDatabase mSQLiteDatabase = mDatabaseHelpergetWritableDatabase();
mSQLiteDatabaseacquireReference();
Cursor mCursor = mSQLiteQueryBuilderquery(mSQLiteDatabase, projection,
selection, selectionArgs, null, null, sortOrder);
mSQLiteDatabasereleaseReference();
return mCursor;
}
@Override
public synchronized int update(Uri uri, ContentValues values, String selection,
String[] selectionArgs)
{
SQLiteDatabase mSQLiteDatabase = null;
int count = 0;
boolean success = false;
try{
mSQLiteDatabase = mDatabaseHelpergetWritableDatabase();
mSQLiteDatabaseacquireReference();
success = true;
switch(mUriMathcermatch(uri)){
case ALARM:
count = mSQLiteDatabaseupdate(ALARM_TABLE_NAME, values,
selection, selectionArgs);
break;
default:
break;
}
}catch(SQLException e){
eprintStackTrace();
}finally{
if(success == true)
mSQLiteDatabasereleaseReference();
}
return count;
}
}
可以参考android alarm源码,query,update等方法写法基本不改什么,只替换表名。或增加一个case
以上就是关于pgAdmin4如何连接服务器数据库全部的内容,包括:pgAdmin4如何连接服务器数据库、DBHelper在Java中是干什么的,怎样应用、DBHelper类等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)