存储过程和函数之间有什么区别.
每当有更多输入时,输出参数就会用于存储过程.如果它只是一个我会去功能.
除此之外,如果我使用更多存储过程,是否存在任何性能问题?我很担心,因为我的项目中有近50个存储过程.
它们在概念上有何不同.
提前致谢!
编辑: -
当我在存储过程和函数中执行计算时,我发现在存储过程中它需要0.15秒,而在函数中需要0.45秒.
令人惊讶的是,功能比存储过程花费更多时间.可能功能是值得的可重用性.
内联函数的执行速度比执行程序快.我认为,这是因为多选功能不能使用statastics,这会降低它们的速度,但内联表值函数可以使用统计信息.
我在SQL Server数据库中有一个存储过程,它返回结果列表.此存储过程在LINQ-to-SQL dbml文件中公开.然后我尝试这样调用这个存储过程:
public List<MyObject> GetObjects()
{
List<MyObject> objects = new List<MyObject>();
using (DatabaseDataContext context = new DatabaseDataContext())
{
objects = context.GetObjectsFromDB(); // This is my problem line
}
return objects;
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,我不知道如何将存储过程的结果转换为List<MyObject>.context.GetObjectsFromDB返回一个System.Data.Linq.ISingleResult<sprocName>.如何将存储过程的结果转换为强预定义类型的列表?
谢谢!
不可否认,这是一个第一世界的问题,但我对显示器的外观有点挑剔,我发现当某些模式设置新的字体大小,系列,粗体/斜体等时,它真的很烦人.我是什么我喜欢把它放在(set-frame-font "Menlo-10")我的.emacs顶部附近,然后强制emacs永远不会改变除默认字体以外的任何方面.
通过这样做,我可以得到我想要的效果:
(mapc (lambda (face)
(set-face-attribute face nil
:family "Menlo"
;; something like (cdr (assoc 'font (frame-parameters)) would be better
;; for the :family, but it didn't immediately work
:width 'normal
:height 1.0
:weight 'normal
:underline nil
:slant 'normal))
(remove 'default (face-list)))
Run Code Online (Sandbox Code Playgroud)
但是只有在我加载了一个新的缓冲区后才能工作,这个缓冲区已经创建了要改变的字体锁面,而且无论如何都是一个可怕的黑客攻击.我怀疑在字体锁定方面没有真正用于忽略模式请求的某些部分,但我想我会问.
此外,AUCTeX是迄今为止最糟糕的攻击者,所以如果在某个地方交替使用AUCTeX设置以防止它首先要求改变族,大小等,这至少会使问题变得不那么烦人.
我目前正在使用最近从HEAD撤出的Emacs 24.
我必须将存储过程添加到MySQL数据库.
问题是托管提供phpMyAdmin来管理数据库.
我在互联网上搜索,其想法是运行创建过程的MySQL本机语句,但由于程序代码经常可能有;,我们必须更改MySQL中的分隔符.
phpMyAdmin没有此选项.有没有人试图手动设置存储过程设置锚点,或者有效的东西?
我正在寻找一个包装浏览器的"后退"按钮为dired.即某种方式回到以前访问过的目录.
我想到的用例是在调用^to父文件夹后更深入地遍历目录树.
有没有办法在Emacs中定义一个面(例如高亮显示hl-line),这样它只会改变背景颜色(并让Emacs使用前景色,就像单词没有突出显示一样).
更具体地说,我在tango-dark主题上尝试了以下内容
(custom-set-faces
'(region ((t (:inherit nil :background "RoyalBlue4"))))
'(highlight ((t (:inherit region :background "dark olive green"))))
'(hl-line ((t (:inherit highlight)))))
Run Code Online (Sandbox Code Playgroud)
并且,如下所示,区域突出显示确实尊重前景字体(即它只改变背景颜色):

但是当前行的突出显示不是:

为什么?我怎样才能获得同样的效果hl-line?
这似乎是tango-dark主题中的一个错误(Emacs的内置主题).该代码适用于默认主题(加载时emacs -Q).我在官方错误邮件列表上发布了这个.
我想看看是否有办法在主模式下更改模式链接前景和背景颜色,
我正在考虑添加逻辑
(add-hook 'after-change-major-mode-hook
Run Code Online (Sandbox Code Playgroud)
但是,我没有所有emacs lisp经验来做出这样的改变.这是逻辑:
switch major-mode:
case "emacs-lisp-mode":
(set-face-foreground 'mode-line "ivory")
(set-face-background 'mode-line "DarkOrange2")
case "ruby-mode":
(set-face-foreground 'mode-line "white")
(set-face-background 'mode-line "red")
...
default:
(set-face-foreground 'mode-line "black")
(set-face-background 'mode-line "white")
end switch
Run Code Online (Sandbox Code Playgroud)
提前谢谢了!.
在这个Overtone的live-coding-in-clojure演示视频中,作者通过内联文档和提醒下拉列表展示了emacs.在54秒时,他甚至强调了这一事实,但并没有放弃关于如何启用它的必要暗示.
这是我理想的emacs设置(我使用的是nrepl和leiningen)中最大缺失的东西,也是唯一吸引我使用Intellij和Eclipse等可怕的面向鼠标的工具的东西.我急需这个设施!
我不知道要安装什么melpa软件包来设置它,我不知道我会称之为聪明的单字名称,所以我不知道如何搜索它."Emacs中的Clojure智能感知"与我能够进入搜索术语的距离非常接近,但它找不到任何有用的东西.
我正在尝试学习emacs,并希望在我的键盘上使用emacs中的任何元命令,因为我使用dwm作为我的窗口管理器,它广泛使用元键.我已经阅读了这个页面,用它来试试
(setq x-meta-keysym 'super)
(setq x-super-keysym 'meta)
Run Code Online (Sandbox Code Playgroud)
没有运气.理想情况下,我想简单地翻转它们,但仅限于emacs.当我用Ch v检查变量x-meta-keysym和x-super-keysym时,命令似乎被正确评估.当我用linux实用程序xev检查超级密钥时,它确认我按下的密钥映射到Super_L.
为什么该语言没有语言服务器协议emacs-lisp?例如,lsp-modeEmacs 包包含对多种语言及其相关语言服务器的支持。但不是emacs-lisp。
为什么会这样?
包裹也是如此eglot。
emacs ×7
emacs-faces ×3
sql-server ×2
autocomplete ×1
c# ×1
clojure ×1
dired ×1
elisp ×1
emacs24 ×1
font-lock ×1
intellisense ×1
key-bindings ×1
linq ×1
modeline ×1
mysql ×1
php ×1
phpmyadmin ×1