Hi all,
I'm currently building a project which involves a lot of collective intelligence. Every user visiting the web site gets created a unique profile and their data is later used to calculate best matches for themselves and other users.
By default, Django creates an INT(11) id field to handle models primary keys. I'm concerned with this being overflown very quickly (i.e. ~2.4b devices visiting the page without prior cookie set up). How can I change it to be represented as BIGINT in MySQL and long() inside Django itself?
I've found I could do the following (http://docs.djangoproject.com/en/dev/ref/models/fields/#bigintegerfield):
class MyProfile(models.Model):
id = BigIntegerField(primary_key=True)
But is there a way to make it autoincrement, like usual id fields? Additionally, can I make it unsigned so that I get more space to fill in?
Thanks!
I currently have a database with over 6 million rows and growing. I currently do SELECT COUNT(id) FROM table; in order to display the number to my users, but the database is getting large and I have no need to store all of those rows except to be able to show the number. Is there a way to select the auto_increment value to display so that I can clear out most of the rows in the database? Using LAST_INSERT_ID() doesn't seem to work.
I have a table with an auto-incrementing ID. After inserting a new row, I would like to retrieve the new ID.
I found an article that used the MySQL function LAST_INSERT_ID(). The article says to create a new query and submit it.
I'm using MySQL Connector C++, Windows XP and Vista, and Visual Studio 9.
Here are my questions:
Is there an API, for the connector,
that will fetch the ID out of the
record?
Does the result set, after an
insert/append, contain the new ID?
The LAST_INSERT_ID is MySQL
specific. Is there an SQL
standard method for obtaining the new ID?
I have 2 tables each using other's primary key as a foreign key. The primary keys for both are set to auto_increment.
The problem is, when I try to create and entry into one of the tables, I have no idea what the primary key of the entry is and can't figure out what to put in the other table as a foreign key. What should I do? Do I drop auto_increment altogether and cook up a unique identifier for each entry so I can use it to address the created entries? I'm using PHP, if that's relevant. Thanks.
Hello, this is my first post.
I have this function for reversing a string in C
that I found.
void reverse(char* c) {
if (*c != 0) {
reverse(c + 1);
}
printf("%c",*c);
}
It works fine but if I replace:
reverse(c + 1);
with:
reverse(++c);
the first character of the original string is truncated. My question is why would are the
statements not equivalent in this instance?
Thanks
For every Card, I would like to attach a special number to them that increments by one.
I assume I can do this all in the controller.
def create
@card = Card.new(params[:card])
@card.SpecNum = @card.SpecNum ++
...
end
Or. I can be blatantly retarded. And maybe the best bet is to add an auto-incremement table to mysql. The problem is the number has to start at a specific number, 1020.
Any ideas?
For every Card, I would like to attach a special number to them that increments by one.
I assume I can do this all in the controller.
def create
@card = Card.new(params[:card])
@card.SpecNum = @card.SpecNum ++
...
end
Or. I can be blatantly retarded. And maybe the best bet is to add an auto-incremement table to mysql. The problem is the number has to start at a specific number, 1020.
Any ideas?
CakePHP 1.3.0, mysqli
I have a model, Manifest, whose ID should be the unique number from a printed form. However, with Manifest.id set as the primary key, CakePHP is helping me by setting up auto-increment on the field. Is there a way to flag the field via schema.php and/or elsewhere to disable auto-increment? I need just a plain, old primary key without it.
The only other solution I can imagine is adding on a separate manifest number field and changing foreign keys in a half dozen other tables. A bit wasteful and not as intuitive.
I want to test concurrency, and reliably replicate an issue that JMeter brought to my attention.
What I want to do is set a unique identifier (currently the time in milliseconds with a counter appended) and increment the counter between loops but not between threads. The idea being that the number of threads I have set up is the number of identical identifiers before incrementing and using another.
If I had 3 threads with a loop count of 2 I want:
1. Unique ID: <current-time-in-millis>000000
2. Unique ID: <current-time-in-millis>000000
3. Unique ID: <current-time-in-millis>000000
4. Unique ID: <current-time-in-millis>000001
5. Unique ID: <current-time-in-millis>000001
6. Unique ID: <current-time-in-millis>000001
I've tried using Throughput Controllers to increment a counter, as well as several other things that seemed they should work but had no luck. This seems like something JMeter should be able to do. Is there any way to get the value of the loop count?
I currently do it in code behind:
Slider.Value += slider.LargeChange
But I was wondering if I could increment/decrement the slider within xaml and then just monitor the slider for the value change.
I didn't learn programming at school and I do not work as a (professional) developer, hence a lot of basics are not quite clear to me. This question tries to clarify one of them.
Now let's suppose that I have issues #1, #2 and #3 in my Issues Tracker that are set to be corrected/enhanced for version 1.0.0 and that the last (stable) version is 0.9.0.
When should I increment to version 1.0.0 ? When a) just one of the listed above issues is closed or b) when all the issues related to version 1.0 are closed ?
Which one is the right way to do it ? And by the right way, I mean what is currently used in the industry.
Thanks.
I've read that I should avoid the postfix increment operator because of performance reasons (in certain cases).
But doesn't this affect code readability? In my opinion:
for(int i = 0; i < 42; i++);
/* i will never equal 42! */
Looks better than:
for(int i = 0; i < 42; ++i);
/* i will never equal 42! */
But this is probably just out of habit. Admittedly, I haven't seen many use ++i.
Is the performance that bad to sacrifice readability, in this case? Or am I just blind, and ++i is more readable than i++?
A table is:
mysql> desc gifts;
+---------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+-------------+------+-----+---------+----------------+
| giftID | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(80) | YES | | NULL | |
| filename | varchar(80) | YES | | NULL | |
| effectiveTime | datetime | YES | | NULL | |
+---------------+-------------+------+-----+---------+----------------+
the following is ok:
mysql> insert into gifts
-> values (10, "heart", "heart_shape.jpg", now());
Query OK, 1 row affected (0.05 sec)
but is there a way to not specify the "10"... and just let each one be 11, 12, 13... ?
I can do it using
mysql> insert into gifts (name, filename, effectiveTime)
-> values ("coffee", "coffee123.jpg", now());
Query OK, 1 row affected (0.00 sec)
but the column names need to be all specified. Is there a way that they don't have to be specified and the auto increment of primary key still works? thanks.
Using Libre Office Calc (3.5) and have a question.
When copying a formula that references cells into multiple empty cells the default is to increment each cell reference by one column or row, depending on the direction that the formula is being drug.
A formula '= 1 + A1' drug horizontally changes to '= 1 + B1' when pulled one cell to right and '=1 + A2' when pulled one cell down.
Is there a way to control increase the increment of the referenced cell? Is is possible to have a formula '= 1 + A1' that effectively changes to '= 1 + A3' when drug down one cell, '= 1 + A5' when drug down two cells, etc?
If it matters, I am trying to take a constantly updating master list of data that is organized by dates (Wednesdays and Saturdays) and create separate spread sheets for each day of the week that can be updated by only pulling down the formula into the next cell. My attempts at using the 'lookup' function, 'offset' function, and creating a sort column in Libre Office Calc are thwarted by my inability to figure out how to get around the single step increment when pulling a formula down into the next cell.
Thanks
I am having trouble defining and automating my build process despite simple requirements:
Every build should have a unique build number.
Every tagged release should be reproducible
What I have:
A C++, Red Hat Enterprise Linux 5.x, Subversion development environment.
A build machine ( actually a virtual machine )
A version.h file with #defines for major, minor, and buildnumber.
A script for incrementing the version.h buildnumber.
A rpmbuild spec file that exports the tagged Subversion source, builds, and makes the rpm installer packages.
Questions:
Assuming multiple developers per project, when should the build number be incremented and version.h file be checked-in? The build machine? Some sort of Subversion hook? Pre-build or post-build?
Thanks in advance for those willing to take the time to share their experience with build processes.
-Ed
Linux newbie. Former Windows C++/.NET developer.
I really can't spot the error, or the misspelling. This script should increase the variable currentTime with 1 every second, as long as i am holding the Space button down.
This is Unity C#.
using UnityEngine;
using System.Collections;
public class GameTimer : MonoBehaviour {
//Timer
private bool isTimeDone;
public GUIText counter;
public int currentTime;
private bool starting;
//Each message will be shown random each 20 seconds.
public string[] messages;
public GUIText msg;
//To check if this is the end
private bool end;
void Update () {
counter.guiText.text = currentTime.ToString();
if(Input.GetKey(KeyCode.Space)) {
if(starting == false) {
starting = true;
}
if(end == false) {
if(isTimeDone) {
StartCoroutine(timer());
}
} else {
msg.guiText.text = "You think you can do better? Press 'R' to Try again!";
if(Input.GetKeyDown(KeyCode.R)) {
Application.LoadLevel(Application.loadedLevel);
}
}
}
if(!Input.GetKey(KeyCode.Space) & starting) {
end = true;
}
}
IEnumerator timer() {
isTimeDone = false;
yield return new WaitForSeconds(1);
currentTime++;
isTimeDone = true;
}
}
I can increment integers in Vim using <Ctrl>-a. The docs seem to say that if I set nrformats to "octal,hex,aplha" (which I am trying to do with :set nrformats="octal,hex,alpha") then <Ctrl>-a will increment a to b, 007 to 010, and 0x09 to 0x0f, but those examples are not working for me (I just a get a beep for a, 007 turns into 008, and 0x09 turns into 0x10).
I have a shell script that executes a backup program and saves the output in a folder. I would like to update the name of the output folder every time the shell script run. In the end I want to have many files with different names like this:
innobackupex --user=root --password=@g@1n --database="open_cart" /var/backup/backup_1 --no-timestamp
And after running the shell script again:
innobackupex --user=root --password=@g@1n --database="open_cart" /var/backup/backup_2 --no-timestamp
Hi,
I am using the hibernate increment strategy to create my IDs on my entities.
@GenericGenerator(name="increment-strategy", strategy="increment")
@Id @GeneratedValue(generator="increment=strategy")
@Column(name="HDR_ID", unique=true, nullable=false)
public int getHdrId(){
return this.hdrId;
}
The entity has the following table annotation
@Table(name = "PORDER.PUB.PO_HEADER", schema = "UVOSi", catalog = "VIRT_UVOS")
Please note I have two datasources.
When I try to insert an entity Hibernate creates the following SQL statement:
select max(hdr_id) from PORDER.PUB.PO_HEADER
which causes the following error: Group specified is ambiguous, resubmit the query by fully qualifying group name.
When I create a query by hand with entityManager.createQuery()
hibernate uses the fully qualified name
select XXX from VIRT_UVOS.UVOSi.PORDER.PUB.PO_HEADER
and that works fine.
So how do I get Hibernate to use the fully qualified name in the Id autogeneration?
Btw. I am using Hibernate 3.2 and Seam 2.2 running on JBoss 4.2.3
Regards
Immo
i have a table with auto increment field and i am using transactions when inserting new data.
now i find there are a few serial nos that are missing. suppose the last serial no was 475, now when i insert new row, the serial allotted to it is 481. how do i correct this.
table_A fields ID(Auto increment),Name,Address
table_B fields ID(Auto increment FK TO table_A ID),Tel,Fax,Email,Salesman
table_C fields ID(Auto increment FK TO table_A ID),monthly_commitment
mysql_query(BEGIN);
$a = mysql_query("INSERT INTO table_A VALUES('','name','address')");
$b = mysql_query("INSERT INTO table_B VALUES('','tel','fax','email','salesman')");
$b = mysql_query("INSERT INTO table_C VALUES('','monthly commitment')");
if(($a) && ($b) && ($c)){mysql_query("COMMIT");} else {mysql_query("ROLLBACK");}
I'm coding a date class and am having trouble with the post-fix increment (the prefix increment seems fine).
Here is the sample code:
public class date
{
int year,
month,
day;
public date(int d, int m, int y)
{
day = d;
month = m;
year = y;
}
static public date operator ++(date d)
{
return d.Next(d);
}
}
The method "Next(date d)" takes a date and returns tomorrows date (I left it out for brevity). I'm to young in C# to understand why the prefix is fine but postfix increment does nothing. But remember in C++ we would have to have two methods instead of just one - for prefix and postfix increments.
Also no errors or warnings on compile.
Hy
I'v a little problem with hibernate on netbeans.
I've a table with an Auto increment id :
CREATE TABLE "DVD"
(
"DVD_ID" INT not null primary key
GENERATED ALWAYS AS IDENTITY
(START WITH 1, INCREMENT BY 1),
"TITLE" VARCHAR(150),
"COM" LONG VARCHAR,
"COVER" VARCHAR(150)
);
But this auto increment is not properly detected with Reverse Engineering.
I get a map file with this :
<id name="dvdId" type="int">
<column name="DVD_ID" />
<generator class="assigned" />
</id>
i've looked on google and on this site ... foud some stuf but i'm still stuck..
i've tried to add insert="false" update="false" on the map file but i get back :
Caused by: org.xml.sax.SAXParseException: Attribute "insert" must be declared for element type "id".
Anny help will be pleased
Vincent