我一直在搜索stackoverflow大约一个小时,找不到任何相关的主题,所以我很抱歉这是一个重复的问题.
我的询问是这样的.是否有一个数据库中有太多表的点?即使结构井井有条,想出来,也完美地促进了设计意图?我有一个快速接近40个表的数据库 - 大约10个主表,以及30多个辅助表(联结表,'枚举'表等).
我只是一个糟糕的开发者 - 或者我应该尝试不同的东西?对我来说似乎有这么多,我真的很害怕它会如何影响项目的表现.在可能的情况下,我做了很多精简,尽可能将类似的东西分组等等.
该数据库是在SQL Server 2008中构建的.
我使用带有而不是插入触发器的表时遇到问题.
我创建的表包含一个标识列.我需要在此表上使用而不是插入触发器.我还需要在触发器中查看新插入的标识的值,这需要在触发器中使用OUTPUT/INTO.问题是执行INSERT的客户端无法看到插入的值.
例如,我创建了一个简单的表:
CREATE TABLE [MyTable](
[MyID] [int] IDENTITY(1,1) NOT NULL,
[MyBit] [bit] NOT NULL,
CONSTRAINT [PK_MyTable_MyID] PRIMARY KEY NONCLUSTERED
(
[MyID] ASC
))
Run Code Online (Sandbox Code Playgroud)
接下来我创建一个简单而不是触发器:
create trigger [trMyTableInsert] on [MyTable] instead of insert
as
BEGIN
DECLARE @InsertedRows table( MyID int,
MyBit bit);
INSERT INTO [MyTable]
([MyBit])
OUTPUT inserted.MyID,
inserted.MyBit
INTO @InsertedRows
SELECT inserted.MyBit
FROM inserted;
-- LOGIC NOT SHOWN HERE THAT USES @InsertedRows
END;
Run Code Online (Sandbox Code Playgroud)
最后,我尝试执行插入并检索插入的值:
DECLARE @tbl TABLE (myID INT)
insert into MyTable
(MyBit)
OUTPUT inserted.MyID
INTO @tbl
VALUES (1) …Run Code Online (Sandbox Code Playgroud) 可能重复:
应该是$ ip = $ _ SERVER ['REMOTE_ADDR']; 在mamp localhost上返回:: 1?
我想用PHP获取网站访问者的IP地址.我期待$ _SERVER ['REMOTE_HOST']返回类似127.0.0.1的东西,但它返回:: 1.
我有一个类似以下目标的makefile:
install:
do a whole bunch of stuff to install
dist: install
cp README.txt $(INSTALL_DIR)
zip $(INSTALL_DIR)
我想不重复来自目标的命令install并dist执行install执行自己的命令之前先.
调用make dist确实执行了来自目标的所有命令,install但之后只是停止并且它不执行自己的命令,例如cp.
我错过了什么吗?
我想使用JavaScript禁用浏览器刷新.
目前,我正在使用window.onbeforeunload,我不希望在用户刷新浏览器时调用它.
最好的方法是什么?
我正在尝试归档一个由于我不擅长Python元编程而变得有点复杂的任务.
我想要一个locations带有函数的模块get_location(name),它返回一个在文件夹的位置/中定义的类,其名称传递给function.类的名称类似于NameLocation.
所以,我的文件夹结构:
program.py
locations/
__init__.py
first.py
second.py
Run Code Online (Sandbox Code Playgroud)
program.py将与:
from locations import get_location
location = get_location('first')
Run Code Online (Sandbox Code Playgroud)
和location是在first.py中定义的类,如下所示:
from locations import Location # base class for all locations, defined in __init__ (?)
class FirstLocation(Location):
pass
Run Code Online (Sandbox Code Playgroud)
等等
好吧,我已经尝试了很多导入和getattribute语句,但现在我感到无聊和投降.如何归档这种行为?
我不知道为什么,但这个代码
def get_location(name):
module = __import__(__name__ + '.' + name)
#return getattr(module, titlecase(name) + 'Location')
return module
Run Code Online (Sandbox Code Playgroud)
回报
>>> locations.get_location( 'first')
<module 'locations' from 'locations/__init__.py'>
Run Code Online (Sandbox Code Playgroud)
位置模块!为什么?!
无论如何从JAVA进程输入notepad.exe进程?
我已经开始编写一些JAVA代码,现在我想从给出的字母列表中随机收到一封信,这样我应该使用什么呢.
我正在阅读文章Double-checked locking和Singleton模式,关于双重检查锁定如何被破坏,以及Stack Overflow上的一些相关问题.
我已经多次使用这种模式/习语而没有任何问题.由于我一直在使用Java 5,我首先想到的是这已经在Java 5内存模型中得到了纠正.然而文章说:
本文引用了Java 5.0之前的Java内存模型; 关于内存排序的陈述可能不再正确.然而,在新的内存模型下,双重检查的锁定习惯仍然被打破.
这是一个真正的问题,如果是这样,在什么条件下?
我正在一个屏幕上编写一个带有两个表的应用程序.左表是文件夹列表,右表显示文件列表.点击左侧的行时,右侧表格将显示属于该文件夹的文件.
我正在使用Core Data进行存储.当文件夹的选择发生变化时,右表NSFetchedResultsController的fetch谓词将改变并执行新的提取,然后重新加载表数据.我使用了以下代码片段:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"list = %@",self.list];
[fetchedResultsController.fetchRequest setPredicate:predicate];
NSError *error = nil;
if (![[self fetchedResultsController] performFetch:&error]) {
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
[table reloadData];
Run Code Online (Sandbox Code Playgroud)
但是获取结果仍然相同.我在获取之前和之后都有NSLog'ed"谓词",并且它们对于更新的信息是正确的.获取结果与初始提取保持一致(加载视图时).
我不太熟悉Core Data获取对象的方式(是否有缓存系统?),但我之前用单表视图完成了类似的事情(更改谓词,重新获取数据和刷新表),一切都进行了好.
如果有人能给我一个提示,我将非常感激.
提前致谢.
iphone core-data uitableview nspredicate nsfetchedresultscontroller
java ×3
core-data ×1
identity ×1
ip-address ×1
iphone ×1
javascript ×1
letter ×1
makefile ×1
notepad ×1
nspredicate ×1
php ×1
process ×1
python ×1
random ×1
singleton ×1
sql ×1
triggers ×1
types ×1
uitableview ×1