UPDATE
以下是查询结果的约束
SELECT * FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_NAME = 'history'
CONSTRAINT_NAME COLUMN_NAME ORDINAL_POSITION
PK_history userKey 1
PK_history name 2
Run Code Online (Sandbox Code Playgroud)
这是查询的结果
SELECT *
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
WHERE TABLE_NAME = 'history'
CONSTRAINT_NAME CONSTRAINT_TYPE IS_DEFERRABLE INITIALLY_DEFERRED
PK_history PRIMARY KEY NO NO
Run Code Online (Sandbox Code Playgroud)
结束更新
我的主机通过ASP.NET企业管理器为我的SQL Server数据库提供了一个接口.
我的表中有3列history:
userId (key,int,NULL不允许)name (键,字符串,不允许NULL)id (不是key,int,允许NULL)我想让id列成为唯一的关键.
要做到这一点,我相信我需要:
但是,当我使用提供的UI时,它永远不会起作用.有时它看起来只是尝试做某事但是当我刷新列的视图时它永远不会改变.它偶尔会创建一个临时表,看起来它试图执行某些操作,但永远不会被复制/覆盖我正在尝试更改的原始表.
当我尝试使用查询时,更改也不会显示.以下是我认为我需要的查询:
SELECT * from history WHERE id is NULL <---- This shows 0 results
ALTER TABLE history
ALTER COLUMN id int NOT NULL
ALTER …Run Code Online (Sandbox Code Playgroud) 我现在正在Heroku上使用共享postgres(dev/free)计划,我在日志中看到这个错误相当多.虽然连接到PG数据库通常都有效,但我不确定这是否属于我的控制之内.Heroku状态页面不会列出发生这些情况时共享数据库的任何停机时间.
使用Rails 3.1.1和Unicorn Web服务器.
错误: 无法将主机名"pg60.sharedpg.heroku.com(http://pg60.sharedpg.heroku.com)"转换为地址:名称或服务未知(PG ::错误)
我的Unicorn配置文件(在Heroku中查看Unicorn的推荐设置后):
worker_processes 3 # amount of unicorn workers to spin up
timeout 30 # restarts workers that hang for 30 seconds
preload_app true
before_fork do |server, worker|
# Replace with MongoDB or whatever
if defined?(ActiveRecord::Base)
ActiveRecord::Base.connection_handler.clear_all_connections!
ActiveRecord::Base.connection.disconnect!
Rails.logger.info('Disconnected from ActiveRecord')
end
# If you are using Redis but not Resque, change this
if defined?(Resque)
Resque.redis.quit
Rails.logger.info('Disconnected from Redis')
end
end
after_fork do |server, worker|
# Replace with …Run Code Online (Sandbox Code Playgroud)