小编Har*_*wig的帖子

将文本表示中的十六进制转换为十进制数

我试图使用PostgreSQL 9.1将十六进制转换为十进制

使用此查询:

SELECT to_number('DEADBEEF', 'FMXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX');
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

ERROR:  invalid input syntax for type numeric: " "
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

postgresql hex types casting

33
推荐指数
5
解决办法
4万
查看次数

用fabric.js绘制一条虚线

我想用fabric.js画一条虚线. 我在github上找到了应该实现此功能的问题#603. 但是我没有找到任何示例代码,也无法使用fabric.js 1.2.1.

它已经是fabric.js 1.2.1的一部分了,还是我必须直接从github上取下它并自己构建它?有人能给我一个简单的例子让我开始吗?

javascript canvas fabricjs

14
推荐指数
1
解决办法
1万
查看次数

删除命名空间中的所有函数?(执行生成的DDL命令?)

我正在尝试编写一个命令来删除命名空间中的所有函数。我已经找到了一个可以生成删除函数脚本的命令:

SELECT 'DROP FUNCTION ' || ns.nspname || '.' || proname || '('
     || oidvectortypes(proargtypes) || ');'
FROM pg_proc INNER JOIN pg_namespace ns ON (pg_proc.pronamespace = ns.oid)
WHERE ns.nspname = 'public'  order by proname;
Run Code Online (Sandbox Code Playgroud)

资料来源:http ://www.postgresonline.com/journal/archives/74-How-to-delete-many-functions.html

这将生成类似以下内容的内容:

                 ?column?                 
------------------------------------------
 DROP FUNCTION public.function1(bigint);
 DROP FUNCTION public.function2();
 DROP FUNCTION public.function3(text);
Run Code Online (Sandbox Code Playgroud)

但是,我不知道如何更改代码,以便实际上删除函数 - 而不是仅生成命令。

有任何想法吗?

sql postgresql dynamic-sql plpgsql

4
推荐指数
1
解决办法
3839
查看次数

设计:在不登录的情况下将用户切换为管理员(su-method)

我在rails3上使用设计,我想用它实现"su".

要调试我的应用程序,有时可以帮助很多人确切地看到遇到问题的用户所看到的内容.因此,我希望有可能(作为管理员)切换到该用户而无需知道他的密码.就像linux系统上的su一样.

我已经看到它为authlogic做了(http://blog.steveklabnik.com/2010/03/05/writing-a-su-feature-with-authlogic.html).

最后的结果应该是,当我将/ admin/su/5称为具有"admin"角色的用户时,我应该以id为5的用户身份登录.

任何帮助或指向正确方向的人都会受到赞赏.

devise ruby-on-rails-3

3
推荐指数
1
解决办法
857
查看次数

rbenv:没有这样的命令`init'

我按照https://github.com/sstephenson/rbenv#section_2上的说明安装了rbenv

在第4点重新启动我的shell将导致错误

$ rbenv init -
rbenv: no such command `init'
Run Code Online (Sandbox Code Playgroud)

尝试直接从其文件夹运行命令也不起作用.

$ cd .rbenv/bin
$ ./rbenv init -
rbenv: no such command `init'
Run Code Online (Sandbox Code Playgroud)

我的$ PATH

$ echo $PATH
/home/myusername/.rbenv/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/myusername/bin
Run Code Online (Sandbox Code Playgroud)

运行rbenv安装有效,直到调用rbenv rehash

$ rbenv install 1.9.3-p0
Downloading http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz...
Installing yaml-0.1.4...
Installed yaml-0.1.4 to /home/hbrandl/.rbenv/versions/1.9.3-p0
Downloading http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p0.tar.gz...
Installing ruby-1.9.3-p0...
Installed ruby-1.9.3-p0 to /home/hbrandl/.rbenv/versions/1.9.3-p0
rbenv: no such command `rehash'
Run Code Online (Sandbox Code Playgroud)

所有其他rbenv命令似乎不起作用.

任何帮助或指针非常感谢.

ruby rbenv

3
推荐指数
2
解决办法
4910
查看次数

仅当满足某个条件时才执行插入语句

我想仅在满足特定条件时运行插入语句。有没有办法用纯sql来做到这一点?

我想在 pl/pgsql 中做的一个例子:

CREATE OR REPLACE FUNCTION set_search_lock (
    userid     IN   integer,
)
    RETURNS boolean AS $body$


DECLARE
BEGIN

    PERFORM 'A' FROM LOCK_TABLE WHERE USERID = userid LIMIT 1;

    IF NOT FOUND THEN
        INSERT INTO LOCK_TABLE (USERID) VALUES (userid);
        RETURN true;
    ELSE
        RETURN false;
    END IF;


END;
$body$
LANGUAGE PLPGSQL;
Run Code Online (Sandbox Code Playgroud)

sql postgresql

3
推荐指数
1
解决办法
5157
查看次数