如何使用Windows窗体应用程序连接两台笔记本电脑共享数据库?我的意思是我已经在我的笔记本电脑上安装了mssql server 2008,我需要制作Windows窗体应用,所以我的朋友可以从他的笔记本电脑修改数据库,它不在局域网中,我们必须使用互联网作为媒介连接,它是如果有人能告诉我一些方向,比如连接字符串应该如何,那就很有用 谢谢 :)
从GitHub下载项目后,尝试在本地运行它.我使用命令创建了一个数据库(我正在使用Postgres 9.1):
postgres = # CREATE NameUser django createDB WITH PASSWORD 'MyPass';
CREATE ROLE
postgres = # CREATE DATABASE DatabaseName OWNER NameUser;
CREATE DATABASE
Run Code Online (Sandbox Code Playgroud)
然后在设置文件中我有这个代码:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2'
'NAME': 'DatabaseName',
'USER': 'NameUser'
'PASSWORD': 'MyPass'
'HOST': 'localhost',
'PORT':'',
}
}
Run Code Online (Sandbox Code Playgroud)
命令后:./manage.py resetdb,收到:
OperationalError: FATAL: password authentication failed for user "NameUser"
FATAL: password authentication failed for user "NameUser"
Run Code Online (Sandbox Code Playgroud)
我在stackoverflow上发现原因可能是文件pg_hba.conf.更改后看起来像这样:
# Database administrative login by Unix domain socket
local all postgres md5
# "local" is for Unix …Run Code Online (Sandbox Code Playgroud) 我正试图找到一个巨大输入的单词模式.我正在为此目的使用字典,几个小时后程序崩溃了MemoryError.
我修改了程序.我通过MySQLdb创建了一个数据库,并在那里插入了值的pattern-index.因此,对于每个单词,我检查它是否在索引中,如果不是,我用值将其写入索引.问题是数据库方法太慢了.
我想知道是否有任何方法可以组合字典和数据库,例如:
if ram <90% usage:
seek into dict
append to dict
else:
if not (seek into dict):
seek into database
append to database
Run Code Online (Sandbox Code Playgroud)
使用字典用于输入100kb数据的相同目的需要约1.5秒
使用数据库进行相同的输入需要大约84秒
原始输入为16 GB.我不知道要处理多少钱.
我正在练习MVC 5,在我的应用程序中,我有一个控制器方法,应该更新给定用户配置文件的地址信息.
我通过使用上下文对象访问数据库来做到这一点,我首先想到的是将数据库行复制到对象,进行更改,然后使用该AddOrUpdate()方法将其放回.但是,我只看到一种Add()方法.
所以我做了以下事情:
public ActionResult EditBillingDetails(EditBillingDetailsViewModel model)
{
if (ModelState.IsValid)
{
string id = User.Identity.GetUserId();
ApplicationDbContext db = new ApplicationDbContext();
db.Users.Single(u => u.Id == id).FirstName = model.FirstName;
db.Users.Single(u => u.Id == id).LastName = model.LastName;
db.Users.Single(u => u.Id == id).Email = model.Email;
db.Users.Single(u => u.Id == id).Address = model.Address;
db.Users.Single(u => u.Id == id).City = model.City;
db.Users.Single(u => u.Id == id).ZIP = model.ZIP;
db.Users.Single(u => u.Id == id).Country = model.Country;
db.SaveChanges();
return RedirectToAction("Manage", new { Message …Run Code Online (Sandbox Code Playgroud) 我有一个分散的MySQL数据库表分布在许多服务器上,并希望有一个函数来获取随机记录.
我看待它的方式,最好的方法是:
这个问题将集中在解决方案的第2部分.
我的表没有数字ID,我们决定使用GUID以避免必须维护票务服务的开销.我们将GUID与分片标识符结合使用,以确保它们是唯一的.
表是这样的:
guid name details
003-b0470602-a64b-11da-8632-93ebf1c0e05a Aura Some details
Run Code Online (Sandbox Code Playgroud)
杰克建议我到目前为止提出的最佳答案是:
SELECT * FROM table LIMIT {result from step 2}我担心这涉及的处理可能会非常大(虽然肯定比这更好ORDER BY RAND() LIMIT 1,并且想知道是否有人有更好的解决方案使用非数字标识符.
我有一个数据库,我想保留在主域,但阻止域管理员写入它.读访问不是问题.为此,看起来我必须确保任何具有写入权限的帐户仅使用SQL登录(因为域管理员可以重置任何其他域帐户的密码).我确实意识到这有其他安全隐患.另一个问题是Windows服务器上的管理员获取数据库mdf文件并将其附加到另一个实例并修改数据库内容,然后替换原始服务器上的mdf.我首先想知道这是否可能,还是需要通过sql server重新连接?
由于服务器仍在域中,因此域管理员显然是服务器上的管理员.是否还有其他方法可以获得我应该担心的数据库写访问权限(例如删除master数据库mdf)?
database sql-server security database-security windows-server-2008
我正在尝试为应用程序构建Web服务,因此数据存储在我拥有的在线数据库中.我目前正在构建PHP文件,我很好奇,我怎么能POST一个array使用cURL在终端Mac应用程序.
你看,应用程序将向web服务发送一个由字符串组成的数组.例如像这样的东西["String 1", "String 2", "String 3"].但是为了测试我将用于将这些值插入数据库的代码是否有效,我需要以某种方式将此数据传递给Web服务.到目前为止,我一直在使用Mac终端应用程序并发布这样的curl -F "user_id=1" localhost/test/webservice.php",但我不知道如何传递数组.
到目前为止我所拥有的是:
curl -F "user_id=1" -F "title=Random title 123" -F "num_items=2" -F "items[]=[Item 1, Item 2]" localhost/test/webservice.php
Run Code Online (Sandbox Code Playgroud)
但我不认为这是传递数组的正确方法,因为我相信我的php文档中的代码是正确的,但是存储在我的数据库中的值实际上是单词数组.我认为这items[]是启动它的正确方法,但我不太确定=-sign 之后会发生什么.
有人知道这样做的正确方法吗?
如果这恰好是正确的,那么我在数组中存储数据的方式就出了问题.我正在使用stmt和这样的bind_param()关键字:
$items = $_POST["items"]; // This is the array
$stmt = $this->db->prepare('INSERT INTO items (item_id, user_id, title) VALUES (?, ?, ?)');
$stmt->bind_param('iis', $item_id, $user_id, $items);
$stmt->execute();
$stmt->close(); …Run Code Online (Sandbox Code Playgroud) 我注意到我正在调整的数据库(postgres 9.2)没有为我感兴趣的许多表运行自动分析,我不太明白为什么.我的理解/期望是基于当前配置,自动分析将在假设表增长或被修改> = 10%的行时运行.但是,根据查询数据库时看到的信息,情况并非如此.
这是一组在pg_stat_all_tables上运行查询的结果,该数据库已经在prod中运行了一年多(结果截断和实际表名被编辑)
??????????????????????????????????????????????????????????????????????????????????????????????????
? relname ? last_autovacuum ? autovacuum_count ? last_autoanalyze ? autoanalyze_count ?
??????????????????????????????????????????????????????????????????????????????????????????????????
? a_large_table ? ¤ ? 0 ? ¤ ? 0 ?
? table_a ? 2014-04-01 ? 1 ? 2014-04-01 ? 1 ?
? table_b ? 2014-04-01 ? 1 ? 2014-04-01 ? 1 ?
? a_very_large_table ? ¤ ? 0 ? ¤ ? 0 ?
??????????????????????????????????????????????????????????????????????????????????????????????????
Run Code Online (Sandbox Code Playgroud)
请注意,table_a和table_b经常被清除旧数据,因此最近这些数据会进行autovacuum/autoanalyze是有道理的.但是,我也希望其他大型表格最近也至少得到了分析.
好的方法,这里是postgresql.conf ...
#------------------------------------------------------------------------------
# AUTOVACUUM PARAMETERS
#------------------------------------------------------------------------------
autovacuum = on
log_autovacuum_min_duration = 1000
autovacuum_max_workers = 3 …Run Code Online (Sandbox Code Playgroud) 我有一个表称为Cases具有约访谈如信息IV_Date,IV_Length,Interviewer等我也有内的字段Cases被称为Case_Code(A varchar),它是一个六字符(三个字母+三个数字)标识符; 例如“ ABC123”或“ ZZZ999”。ContactID(an int)上有一个外键,它指向一个Contact表。我创建了一个计算列,它是此Cases表的PRIMARY KEY ,称为CaseID。CaseID仅仅是的串联Case_Code和ContactID。因此,ContactID为案例“ ZZZ99925”工作的“ 25”被指定CaseID为“ ZZZ99925”。既不Case_Code也不ContactID接受null,因此CaseID显然不接受。设置时CaseID我将其创建为NOT NULL,PRIMARY KEY,并使用了公式“ [Case_Code] + CONVERT([varchar],[contactID],0)”。我以为一切都很好,但是当我尝试重新排列SQL Studio表设计视图中的任何字段时,会抛出此错误:
'Cases (dbo)' table
- Unable to create index 'PK_Cases_1'.
Cannot define PRIMARY KEY constraint on nullable column in table 'Cases'.
Could not create …Run Code Online (Sandbox Code Playgroud) 我将开始学习NOSQL数据库(在实践中,已经完成了我的研究并理解了概念和建模方法).我正在使用时间序列数据,cassandra和mongodb都推荐用于此用例.我想知道哪一个学习的时间更短?(不幸的是,我没有太多时间花在学习上)PS:我注意到mongoDB有更多的教程和文档(我是否正确?)谢谢!