我在本地使用Mercurial进行项目(这是唯一没有推送/拉动其他地方的回购).
到目前为止,它有一个线性历史.然而,我正在研究的当前事情我现在已经意识到这是一种可怕的方法,我想在开始之前回到版本并以不同的方式实现它.
我对Mercurial中的branch/ revert/ update -C命令有点困惑.基本上我想恢复到版本38(目前在45)并让我的下一个提交有38作为父母并从那里继续.我不在乎修改39-45是永远丢失还是最终落入他们自己的死胡同.
我需要哪个命令/命令集?
客户声称,在查询某些数据时,应用程序(.NET)会返回与客户直接查看数据表时不同的数据.
我知道可能有各种各样的原因并且在完全不同的地方.我的目的不是在这里解决它,而是要求经验丰富的DBA和DB开发人员:
SELECT ... FOR UPDATE导致这个???在某些表中,列位置发生了变化:显然,客户为数据库使用情况分析的顾问提供了完整的数据库访问权限.当使用子句时,那个伟大的家伙改变了列的顺序,以查看表格开头的几个审计字段SELECT * ....
使用dbGhost将数据库模式与问题出现前几天进行的备份模式进行比较,并发现列位置差异.
接下来发生的事情与编程无关,但更多的是政治问题.
因此,这sp_refreshview是解决方案.我只是更进一步找到导致问题的原因.谢谢你们.
生成代码/脚本时,
为什么SQL Server Management Studio使用方括号而不是双引号生成代码?
SELECT [NAME] FROM [TABLE]
并且有一种方法(设置/注册表项)来配置它使用双引号(标准)而不是?
从"表"中选择"NAME"
这是非常MSFT-TY功能,因为他们所有的文档现在表明双引号(见本)
我使用INFORMATION_SCHEMA带有以下查询的视图集列出给定表的所有 FK 约束:
SELECT X.UNIQUE_CONSTRAINT_NAME,
"C".*, "X".*
FROM "INFORMATION_SCHEMA"."KEY_COLUMN_USAGE" AS "C"
INNER JOIN "INFORMATION_SCHEMA"."REFERENTIAL_CONSTRAINTS" AS "X"
ON "C"."CONSTRAINT_NAME" = "X"."CONSTRAINT_NAME"
AND "C"."TABLE_NAME" = 'MY_TABLE'
AND "C"."TABLE_SCHEMA" = 'MY_SCHEMA'
Run Code Online (Sandbox Code Playgroud)
一切正常,但对于一个特定的约束,UNIQUE_CONSTRAINT_NAME列的值是错误的,我需要它以便从引用的列中找到其他信息。基本上,对于大多数行,它UNIQUE_CONSTRAINT_NAME包含引用表中唯一约束(或 PK)FK的名称,但对于一个特定的行,它是其他一些唯一约束的名称。
我放弃并重新创建了 FK - 没有帮助。
我的假设是元数据在某种程度上被搞砸了。有没有办法重建元数据,以便INFORMATION_SCHEMA视图实际显示正确的数据?
编辑 1:示例数据库结构
CREATE TABLE MY_PARENT_TABLE (
ID INTEGER,
NAME VARCHAR,
--//...
CONSTRAINT MY_PARENT_TABLE_PK PRIMARY KEY CLUSTERED (ID)
)
CREATE UNIQUE NONCLUSTERED INDEX MY_PARENT_TABLE_u_nci_ID_LongName ON MY_PARENT_TABLE (ID ASC) INCLUDE (SOME_OTHER_COLUMN)
CREATE TABLE MY_CHILD_TABLE (
ID INTEGER, …Run Code Online (Sandbox Code Playgroud) 假设我有这样的事情:
def Tab(Base):
a = 'a'
b = 'b'
c = 'c'
def __init__(self):
self.c_a = DBSession.query(Table2).filter(Table2.a == self.a).all()
Run Code Online (Sandbox Code Playgroud)
似乎self.c_a只适用于我插入的项目.我想确保指定的操作__init__(这只是一个可能更好的例子relationship(),但使用你的想象力)适用于所有对象,包括SA从我的数据库中查询的对象.有人知道怎么做吗?
我觉得我可能会误解某些东西,如果是的话请纠正我.
我运行以下代码
db = create_engine('sqlite:///tracking_test.db')
db.echo= True
metadata = MetaData(db)
session = create_session(bind=db)
#define tables, if they exist sqlalchemly will find them and sycn otherwise they will be created
delivered= Table('delivered', metadata,
Column('delivered_id',Integer,primary_key=True),
Column('domain',String(200)),
Column('path',String(500)),
)
class Delivered(object):
def __init__(self,obj):
self.domain=u'%s' % obj.get("dm","")
self.path=u'%s' % obj.get("pth","")
report1t = Table('clicked', metadata,
Column('clicked_id',Integer,primary_key=True),
Column('domain',String(200)),
Column('path',String(500)),
)
class report1(object):
def __init__(self,obj):
self.domain=u'%s' % obj.get("dm","")
self.path=u'%s' % obj.get("pth","")
metadata.create_all()
mapper(report1, report1t)
mapper(Delivered,delivered)
result= {}#some dict
newT = Delivered(result)
if newT:
session.add(newT)
session.commit()
session.flush()
Run Code Online (Sandbox Code Playgroud)
我收到此错误sqlalchemy.exc.InvalidRequestError:没有开始事务.
会议词典说: …
我有一个数据库服务器,几乎没有主数据库,几十个小数据库.
这些小型数据库是一种中介/临时数据库,用于从各种源向主数据库导入数据.数据导入是一项日常任务.它们在结构上非常相似,因为这些数据导入的实现是相似的,所以基本上它们有一个配置表,它定义了映射,转换等,以及包含导入结果的数据表.
前段时间只有少数几个小的,但现在我有超过20个它们将随着支持的数据源的数量进一步增长.
我刚刚将所有服务器环境迁移到SQL Server 2008,并且现在有一些时间进行清理/重构,我想将所有数据导入数据库合并到一个数据库中,并用它database schema来分隔它们.
问题0:针对所述情况的任何其他想法?
问题1:我要从a separate database改为a separate schema吗?
问题2: !!!:在database schema实施中要小心任何棘手的事情?
编辑-1:突出显示的问题-2是目前最"未答复"的问题.
IE:
class Share(db.Model):
"""
Stores the Checkpoint shares between users
"""
id = db.Column(db.Integer, primary_key=True)
user_from_id = db.Column(db.Integer, db.ForeignKey('user.id'))
user_from = db.relationship("User")
user_to_id = db.Column(db.Integer, db.ForeignKey('user.id'))
user_to = db.relationship("User")
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:
ArgumentError:无法确定关系Share.user_from上的父/子表之间的连接条件.指定'primaryjoin'表达式.如果存在'secondary',则还需要'secondaryjoin'.
我怎样才能解决这个问题?
谢谢!
关于静态数据表设计.在表中显示静态数据:
将另一个(INTEGER)列作为主键是否有意义,以便所有外键引用都可以使用它?
可能的解决方案:
_______你的建议是什么?为什么?
我通常使用INT IDENTITY列,但通常使用短代码足以在UI上向用户显示,在这种情况下查询将少一个JOIN.
如何使用Angular在选择下拉列表中订购列表?
这是角度控制器:
var app = angular.module("app", []);
app.controller('Ctrl', function($scope, $filter, $http) {
$scope.options= [
{
"id": 823,
"value": "81"
},
{
"id": 824,
"value": "77"
},
{
"id": 825,
"value": "152"
},
];
});
Run Code Online (Sandbox Code Playgroud)
和HTML:
<h4>Angular-xeditable Editable row (Bootstrap 3)</h4>
<div ng-app="app" ng-controller="Ctrl">
<select ng-model="test" ng-options="v.id as v.value for v in options | orderBy: value"></select>
</div>
Run Code Online (Sandbox Code Playgroud)
现在订单是:81,77,152
我想要:77,81,152
我怎么能这样做?
Jsfiddle测试
谢谢