我有三个表结构:tournament,group和team.所述tournament和group表具有一个一对多关系,group并team具有一个对多关系如下所示.
我如何复制的价值tournament_id,从group表到group_tournament_id的team表?
我正在寻找一个使用create语句来实现这个目标的答案
create table team (
id serial primary key,
group_id int references group,
group_tournament_id int references group(tournament_id)
);
Run Code Online (Sandbox Code Playgroud)
当然这不起作用,因为为了引用它必须是唯一的东西,在这种情况下,tournament_id不是唯一的
当我插入团队时,我需要一种标准的方法来将tournament_idfrom 的值复制group到'team'表中group_tournament_idgroup_id insidetable
编辑:不再需要在symfony中回答,只需postgreSQL即可
postgresql database-design one-to-many table-relationships postgresql-9.6
假设我们在多对多关系中有两个表,如下所示:
class User(db.Model):
__tablename__ = 'user'
uid = db.Column(db.String(80), primary_key=True)
languages = db.relationship('Language', lazy='dynamic',
secondary='user_language')
class UserLanguage(db.Model):
__tablename__ = 'user_language'
__tableargs__ = (db.UniqueConstraint('uid', 'lid', name='user_language_ff'),)
id = db.Column(db.Integer, primary_key=True)
uid = db.Column(db.String(80), db.ForeignKey('user.uid'))
lid = db.Column(db.String(80), db.ForeignKey('language.lid'))
class Language(db.Model):
lid = db.Column(db.String(80), primary_key=True)
language_name = db.Column(db.String(30))
Run Code Online (Sandbox Code Playgroud)
现在在python shell中:
In [4]: user = User.query.all()[0]
In [11]: user.languages = [Language('1', 'English')]
In [12]: db.session.commit()
In [13]: user2 = User.query.all()[1]
In [14]: user2.languages = [Language('1', 'English')]
In [15]: db.session.commit()
IntegrityError: (IntegrityError) column lid …Run Code Online (Sandbox Code Playgroud) 我有一个"主桌",称之为Customers:
CREATE TABLE Customers (
CustomerID int PRIMARY KEY NOT NULL,
FirstName nvarchar(50),
LastName nvarchar(50)
)
Run Code Online (Sandbox Code Playgroud)

我有一个"卫星表",称之为Customer_IllegallyObtainedInformation:
CREATE TABLE Customer_IllegallyObtainedInformation (
CustomerID int PRIMARY KEY NOT NULL,
CellPhonePin int,
SexualOrientation varchar(20),
EmailPassword varchar(50)
)
Run Code Online (Sandbox Code Playgroud)

现在,我想要的是从Illegal表回到主Customers表的外键约束:

换一种说法:
Customer 没有一个Illegal条目Illegal没有进入Customer我的本能是在SQL Server数据库图中拖动
Illegal表TO的Customers表指示SQL Server Customers_IllegallyObtainedInformation是关系中的"子".相反,SQL Server中发生的事情使它成为一对一的关系:

这意味着如果您尝试插入a …
sql-server table-relationships sql-server-2008-r2 relationships
我可以通过在 Visual Studio 2010 中右键单击并选择表设计器中的关系,使用 SQL Server Express 非常轻松地创建表关系。如何在不使用 SQL Server Management Studio 的情况下使用 SQL Server Express LocalDB 中的 Visual Studio 2013 创建两个表之间的关系?我对此很困惑。可能没有 T-SQL 代码。我想要一个简单的解决方案。
对于将相关数据传递给视图这一看似简单的问题,我找不到解决方案。我有一个属于“地区”的模型“公司”。我belongsTo在我的公司模型中创建了关系
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Company extends Model
{
protected $table = 'companies';
protected $primaryKey = 'Comp_id';
protected $fillable = ['industrylink_id', 'region_id','companyname','contactno','regno','vatno','salaryroll','numemployees'];
public function employees(){
return $this->hasMany('App\Models\Employee');
}
public function region(){
return $this->belongsTo('App\Models\Region');
Run Code Online (Sandbox Code Playgroud)
还有hasManyRegion 模型中的关系:
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Region extends Model
{
protected $table = 'regions';
public function companies(){
return $this->hasMany('App\Models\Company');
}
}
Run Code Online (Sandbox Code Playgroud)
我的show控制器成功地将会话行的变量传递给视图,但是我想使用以下内容访问相关表数据的那一刻......(表'区域'与列'区域')
<p>Region: {{ $company->region->region }}</p> -->
Run Code Online (Sandbox Code Playgroud)
...我得到了错误
“试图获取非对象的属性:(视图:...”
我已经将我的模型位置更改为 app\Models 并且我已经在模型和控制器中进行了所有必要的命名空间更改,以及在 composer.json 中的自动加载。我做了一个 composer dump & config:clear 和所有其他 …
我有几个具有确切表结构的mdb文件.我必须将主表的主键从autonumber更改为所有这些中的数字,这意味着我必须:
有没有办法从一个文件导出关系并将它们导入到所有其他文件?
我确信这可以通过一些宏/ vb代码来完成.有没有人有我可以使用的例子?
谢谢.
我创建了3个模型:
我遇到的问题是我对主动记录技术还不熟悉,我不明白定义所有内容的正确方法.目前,我认为这是错误的,我有一个
ArticleTag
belongs_to :article
belongs_to :tag
Run Code Online (Sandbox Code Playgroud)
现在,从这里开始我的想法就是添加
Article
:has_many :tag
Run Code Online (Sandbox Code Playgroud)
我不确定我是否正确接近这一点.谢谢您的帮助!
我试图用ODBC数据源中的链接表替换Access DB中的所有本地表。我可以导入以“ xyz_table”形式出现的新表。我想用“ xyz_table”替换旧的本地“表”。但是,当我删除“表”或重命名“ xyz_table”以替换“表”时,它将删除原始本地“表”的所有关系/对象依赖性。(查询,表格,报告等)
无论如何,有没有保存/应用从原始本地“表”到新的ODBC链接“ xyz_table”的关系/对象依赖关系。我不想手工尝试重新链接所有关系/对象依赖项。
任何帮助将不胜感激。
有点连接到我以前的问题:
我有以下表格/模型:

我已经设法为actionIndex连接了所有表,但是我现在想为actionView实现相同的东西,但是find()和findOne()似乎不一样。联接不适用于findModel($ id)
我没有什么头绪,能否请您指出正确的方向?实际上,我只需要在模型BCD视图中显示模型A的相关数据,就可以肯定有一种简单的方法,但是我什么也找不到,我什至不知道要寻找什么。因为问题是,在正常关系下,我只能伸到表B,所以最多只能有2个等级。我试图创建一种关系,这种关系可以达到第3级,但无法正常工作。谢谢。
在 PostgreSQL中,在事件中对使用外键引用父表的子表的默认操作是什么UPDATE / DELETE?
列出的可能如下:
NO ACTION | RESTRICT | CASCADE | SET NULL | SET DEFAULT
Run Code Online (Sandbox Code Playgroud)
我想它可能是NO ACTION,但官方文档没有在 SELECT 语句规范的事件段落中指定它(不幸的是,该段落的深层链接不可引用)。
ms-access ×2
postgresql ×2
access-vba ×1
foreign-keys ×1
laravel ×1
localdb ×1
many-to-one ×1
models ×1
odbc ×1
one-to-many ×1
python ×1
relationship ×1
replace ×1
sql-server ×1
sqlalchemy ×1
vba ×1
yii2 ×1